第八章 传输层协议TCP与UDP协议详解

本文详细介绍了传输层的TCP与UDP协议,包括TCP的面向连接服务、序列号、确认号、校验和等功能,以及UDP的无连接服务。此外,还探讨了数据包从输入www.google.com到显示在浏览器前的完整旅程,涉及应用层、传输层、网络层和数据链路层的过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

传输层协议TCP与UDP协议详解

1、IPv4的基本配置介绍,PC配置以及路由器配置

IP

  • 手工配置,比较固定。静态IP地址
  • DHCP动态主机配置协议,租赁,24小时

PC建议自动获取

Printer、Server、Router建议手工配置,使IP地址稳定。

DNS 域名解析服务 www.baidu.com —x.x.x.x

2、传输层两大服务,面向连接以及无连接

TCP/UDP封装协议

TCP 传输控制协议

UDP 用户数据报协议

这两个服务都能定义四层报头,并且将数据切片

3、TCP的基本工作原理

面向连接服务,可靠数据传输,具有重传机制。

可靠传输:

1、避免拥塞,流量控制;

2、依靠序列号(sequence)来防止乱序;

3、防止丢包 Acknowledgement;

4、防止篡改 Checksum校验和字段;

5、重传功能。

img

TCP 20-60Byte TCP/IP协议卷一 详解

TCP Header

1、源目端口
2、序列号码
3、确认号
4、报头长度、保留字段、控制位、滑动窗口
5、校验和、紧急指针
6、
7、数据

TCP的三次握手,TCP信令,内容为空,但是包含TCP报头。

Client-Server:TCP SYN

Server-Client:TCP SYN+ACK

Client-Server:TCP ACK

TCP的四次挥手

TCP数据可靠传输但是不安全,例如:TCP SYN Flooding Attack。

4、UDP的基本工作原理

无连接服务,尽力而为的传输,没有重传功能。应用层此时应该有一定的可靠传输机制。

但是UDP支持组播转发。

img

语音、视频这一类数据流量适合使用UDP。

Ethernet2|IPv4|UDP|rtp|VoIP|FCS

Realtime transport protocol

5、Google年薪20w美金面试题,一个数据包的旅行

打开你的笔记本,打开浏览器,在地址栏输入www.google.com,点击回车,在这个页面显示在浏览器之前,究竟经历了一些什么事情。

应用层:

1、在地址栏输入域名后,会开启HTTP这个应用,HTTP会尝试在DNS服务器(114.114.114.114)中,找到对应网址的IP地址的映射(A记录),如果找到了,DNS服务器会返回对应的IP地址给浏览器,在这个过程当中会用到F5 ,GTM(Global Traffic Manager)(负载均衡),根据客户所属的位置,找到一个离该位置最近的,并且线路最优的Google服务器;

2、找到Google服务器之后,http会根据TCP协议,让主机和服务器进行TCP三次握手,形成了TCP连接,此时HTTP的流量就能从主机发出到达服务器,服务器也可以返回浏览器HTTP协议所需要的数据;

3、浏览器会从服务器接受HTML、CSS、JS等代码,经过浏览器编译后,将一个动态的网页展示给客户看;

传输层:

4、在Google服务器和主机之间数据包发送的过程中,HTTP的数据流量没需要经过TCP协议的数据分片,分片之前要给数据添加四层报头(目的端口号和源端口号);

网络层:

5、添加三层报头(源IP也就是主机的IP,目的IP也就是通过DNS获得的服务器IP);

数据链路层:

6、添加二层帧头,主机会根据服务器的地址来判断,两者是不是在同一个网络(使用主机自身的子网掩码,跟服务器的IP地址做一个运算得到一个网络号,再跟主机本身的网络号做一个对比,),a如果相同就在同一网络,就直接解析服务器MAC地址,如果不同,主机会根据所指定的网关地址,检查ARP表,查看本地有没有网关到MAC的映射,如果有直接使用来封装帧头,如果没有,主机会发送ARP请求;网关收到ARP请求后,会记录主机的ARP表项,同时给主机做一个单播的ARP应答;PC接到ARP应答后,就可以封装二层帧头(目的MAC地址使用网关MAC地址,源MAC地址会使用自身的MAC地址,添加一个类型字段,添加一个帧尾);帧发送到交换机,交换机学习到MAC地址表项,并根据目的MAC地址,把帧发送给网关接口;网关接收到该帧后,查看目的MAC地址,发现与自身MAC地址一致,会认为是发给自己的,所以拆开二层封装,查看三层报头的目的IP,通过查看发现该帧不是发给自己的,通过之前获得的目的IP,利用IPv4的动态路由表项(包含多种路由选择协议),获得服务器的位置以及去往服务器的路径信息,最终通过提供的路径信息,一跳一跳的发送数据;其间,每经过一次路由,都会重复一次上述操作的,即拆封二层报头,再重新封装二层报头,直至抵达终点。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值