网络协议基础

来源:互联网 发布:sql怎么做全备份 编辑:程序博客网 时间:2024/05/16 11:44


     什么是网络协议及为何要有网络协议

网络协议为计算机网络中进行数据交换而建立的规则、标准或约定的集合。为什么要有网络协议呢,为了有效的进行数据交换。如果没有网络协议,计算机之间各自对自己的电信号进行规定,同一段电信号不同计算机就有不同的解读,甚至没办法解读。这样,计算机之间就没有办法沟通。所以,需要网络协议要规定一致的解读方法,来保证交流的通畅。

     TCP/IP五层模型:物理层、数据链路层、网络层、传输层、应用层。

    

用户上网流程:

1.本机插上网线,获取IP地址192.168.255.1子网掩码: 255.255.255.0默认网关: 192.168.16.254 DNS: 211.98.71.195

2.打开浏览器输入域名www.163.com

3. dns协议(基于udp协议解析为IP地址) 解析为IP地址

 

4. HTTP协议(HyperText Transfer Protocol,超文本传输协议)是用于从WWW服务器传输超文本到本地浏览器的传输协议。我们在浏览器的地址栏里输入的网站地址叫做URL (Uniform Resource Locator,统一资源定位符)。就像每家每户都有一个门牌地址一样,每个网页也都有一个Internet地址。当你在浏览器的地址框中输入一个URL或是单击一个超级链接时,URL就确定了要浏览的地址。浏览器通过超文本传输协议(HTTP),将Web服务器上站点的网页代码提取出来,并翻译成漂亮的网页。

5.TCP协议

TCP数据包需要设置端口,接收方(Google)的HTTP端口默认是80,发送方(本机)的端口是一个随机生成的1024-65535之间的整数,假定为51775。

TCP数据包的标头长度为20字节,加上嵌入HTTP的数据包,总长度变为4980字节。

6. IP协议

然后,TCP数据包再嵌入IP数据包。IP数据包需要设置双方的IP地址,这是已知的,发送方是192.168.255.1(本机),接收方是122.70.142.182(ww.163.com)。

IP数据包的标头长度为20字节,加上嵌入的TCP数据包,总长度变为5000字节。

7.以太网协议

最后,IP数据包嵌入以太网数据包。以太网数据包需要设置双方的MAC地址,发送方为本机的网卡MAC地址,接收方为网关192.168.1.1的MAC地址(通过ARP协议得到)。

以太网数据包的数据部分,最大长度为1500字节,而现在的IP数据包长度为5000字节。因此,IP数据包必须分割成四个包。因为每个包都有自己的IP标头(20字节),所以四个包的IP数据包的长度分别为1500、1500、1500、560。

8.服务器端响应

经过多个网关的转发,163的服务器122.70.142.182,收到了这四个以太网数据包。

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

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

 

 

 

 

原创粉丝点击