zoukankan      html  css  js  c++  java
  • DAY-3 计算机基础之网络

    一、什么是互联网协议及为何要有互联网协议

    1、互联网的本质就是一系列的标准,总称为‘互联网协议’(Internet Protocol Suite).

    举例:当我们要和其他国家人进行沟通的时候,我们不可能去学会每一个国家的语言,所以我们会使用世界通用的语言标准-英语,那么连接2台计算机之间的Internet就是一系列的标准,这些标准就是互联网协议

    2、当一台计算机有了硬件、系统和软件,那么世界上每一台计算机通过什么进行沟通和连接呢?这就需要Internet将每一台计算机进行连接,让他们相互之间可以访问

    互联网协议的功能就是:定义计算机如何接入Internet,以及接入计算机Internet的通信标准

    二、osi五层模型

    互联网协议按照功能不同分为osi7层、tcp/ip五层和tcp/ip四层

    将应用层,表示层,会话层并作应用层,从tcp/ip五层协议的角度来阐述每层的由来与功能,来理解整个互联网通信的原理

    1、物理层——每一台计算机之间要进行连接必须要接入Internet,也就是说需要将它们之间用光缆、电缆等进行组网

    主要功能:是基于电器特性发送高低电压(电信号),高电压对应数字1,低电压对应数字0

    2、数据链路层——仅仅只是电信号0和1没有什么意义,必须给这些信号赋予一定的意义(比如分组,给每组定义)

    功能:定义电信号的分组含义

    计算机的分组方式是基于以太网协议Ethernet-每一数据分成:报头head和数据data两部分,报头主要是发送者、接收者、数据类型(就好比快递,外包装会填写收发货人信息),数据就是发送的主要内容

    mac地址-head中包含的源和目标地址由来:ethernet规定接入internet的设备都必须具备网卡,发送端和接收端的地址便是指网卡的地址,即mac地址

    mac地址:每块网卡出厂时都被烧制上一个世界唯一的mac地址

    广播-有了mac地址,同一网络内的两台主机就可以通信了(一台主机通过arp协议获取另外一台主机的mac地址)

    ethernet采用最原始的方式,广播的方式进行通信,即计算机通信基本靠吼

    3、网络层——有了ethernet、mac地址、广播的发送方式,世界上的计算机就可以彼此通信了,问题是,一台计算机向另一台计算机发送信息时,通过以太网的传播方式,那就发到                 了每一台计算机上,这将传播信息效率大大降低了

    网络层功能:引入一套新的地址用来区分不同的广播域/子网,这套地址即网络地址

             IP协议-规定网络地址的协议叫ip协议,它定义的地址称之为ip地址

             子网掩码-就是表示子网络特征的一个参数,通过子网掩码就能知道2台计算机是否在同一局域网内

              IP数据包-ip数据包也分为head和data部分,无须为ip包定义单独的栏位,直接放入以太网包的data部分

              arp协议-广播的方式发送数据包,获取目标主机的mac地址

    4、传输层——建立端口到端口的通信,端口即应用程序与网卡关联的编号

     tcp协议-可靠的协议(“数据发出后,会收到确认的消息”) udp协议-不可靠数据

    5、应用层——用户使用的都是应用程序,均工作于应用层,互联网是开发的,大家都可以开发自己的应用程序,数据多种多样,必须规定好数据的组织形式 

    应用层功能:规定应用程序的数据格式。

    三、用户的上网流程

    1.本机获取

    本机的IP地址:192.168.1.100

    子网掩码:255.255.255.0

    网关的IP地址:192.168.1.1

    DNS的IP地址:8.8.8.8

    2、打开浏览器访问百度,在地址栏输入-www.baidu.com

    3、通过dns协议(基于udp协议)

    4、服务端响应——经过多个网关的转发,百度的服务器172.194.72.105,收到了这四个以太网数据包。

    根据IP标头的序号,百度将四个包拼起来,取出完整的TCP数据包,然后读出里面的”HTTP请求”,接着做出”HTTP响应”,再用TCP协议发回来。

    本机收到HTTP响应以后,就可以将网页显示出来,完成一次网络通信。

  • 相关阅读:
    Processing中如何记录Sketch运行时间
    交互设计算法基础(11)- Merge Sort
    交互设计算法基础(10)- Quick Sort
    交互设计算法基础(9)- Bubble Sort
    交互设计算法基础(8)- Heap Sort
    交互设计算法基础(7)- Straight Selection Sort
    交互设计算法基础(6)- Shells Sort
    交互设计算法基础(5)- Straight Insertion Sort
    ZOOM 似乎无法连接。请检查您的网络连接,然后重试。【已解决】
    Android下通过root实现对system_server中binder的ioctl调用拦截
  • 原文地址:https://www.cnblogs.com/fenglinglf/p/6889438.html
Copyright © 2011-2022 走看看