当前位置:   article > 正文

快速理解网络协议——笔记_数据包data

数据包data

参考油管视频:网络编程基础篇 #01 快速理解网络协议(上)【2018版】 

参考B站:网络协议 TCP/IP 视频教程全集(23P)| 14 小时从入门到精通


 一、网络协议五层模型

越靠下层,和硬件关系越近;越靠上层,和使用者越近

 

二、ftp案例图解

程序员接触到的是应用层,比如开发一个ftp应用软件,通过调用内核的tcp相关api使用即可

 

三、访问一个网页都发生了什么?

数据的形式(head+date,每往下一层,前面就会多一层头数据,后面的相对都是数据体)

5:访问192.168.1.102

4:前面多了个数据头:当前主机端口(随机的)和目标主机端口是多少访问192.168.1.102

3:前面多了个数据头:当前IP是多少,目标主机是多少当前主机端口(随机的)和目标主机端口是多少访问192.168.1.102

2:前面多了个数据头:当前mac地址是多少,目标主机mac地址是多少。当前IP是多少,目标主机是多少当前主机端口(随机的)和目标主机端口是多少访问192.168.1.102

1:物理连接的线

 

四、由事物的发展顺序

1.物理层:两台主机想要通信,最简单的方式就是拿网线直接连起来,只是第一步。线路只能传递0101这样的电信号。

为了能够传递有用的信息,必须规定一定长度的0101代表什么意思。

数据链路层的以太网协议,就规定了这种规则。

2.链路层(MAC):head+data的形式(称为一帧)

 

头信息包含了发送者的信息和接收者的信息(head里接收者和发送者的MAC地址)

用到MAC地址,每一个入网设备(网卡)都有自己的MAC地址

()

多台设备是怎么传输的信息的呢? 

广播的概念:自己说话,大家都能听得见,是某人想要的数据,某人才会做一些事

以太网协议中有一个arp协议。

如:设备1想要给设备2发送消息,每台设备都被接收到消息,接收到了移到,看一下头消息的接收地址和自己的mac地址匹配不匹配,匹配的话就传输数据。

 

注意:同一子网中的设备才可以使用arp传输,互联网是由多个子网构成的,不同的子网之间传输是用的IP协议。还有一个原因,如果所有电脑都在一个子网中,使用arp传输的效率低,每台电脑都需要接收太多无用的广播

 3.网络层(IP)

IP数据包中的data是以太网的数据包的 head+data

 通过IP地址就可以连接互联网中的两台电脑了,但是电脑上的软件,在同一时间不可能只做一件事,有可能一边聊天一边看网页。需要同时传输多种不同的数据。怎么办?

需要端口出现,也就是TCP/UDP协议。

4.传输层(TCP/UPD,端口)

head+data的数据形式,head中有端口信息,接收的端口和发送的端口。

UDP只管发送,丢不丢数据不知道。

TCP相当于有检测功能的UDP

TCP有三次握手,判断目标是否接收到消息。

5.应用层

应用软件可以通过IP端口(TCP/UDP)与其他主机进行信息传输。(IP和端口也称为套接字)

五、案例

 

 六、开机上网

如果设置的是动态IP,需要向DHCP服务器发送请求,获取动态IP,就可以上网了 。

DHCP服务器负责动态分发IP

七、访问网页

先向DNS服务器发送数据包,获取目标主机IP地址。 

然后使用HTTP去访问 

 

 数据太大,会分成几个数据包发送,服务器收到后会重组解析内容。

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/凡人多烦事01/article/detail/293831
推荐阅读
相关标签
  

闽ICP备14008679号