传输层协议(TCP, UDP)

传输层定义了主机应用程序之间端到端的连通性。传输层中最为常见的两个协议分别是传输控制协议TCP(Transmission Control Protocol)和用户数据报协议UDP(User Datagram Protocol)。

TCP
TCP是一种面向连接的传输层协议,提供可靠的传输服务。
TCP通过端口号区分不同网络服务
在这里插入图片描述

TCP允许一个主机同时运行多个应用进程。每台主机可以拥有多个应用端口,每对端口号,源和目标IP地址的组合唯一地标识了一个会话。端口分为知名端口和动态端口。有些网络服务会使用固定的端口,这类端口称为知名端口,端口号范围为0~1023。
比如:FTP,HTTP,Telnet,SNMP服务均使用知名端口。
动态端口范围1024~65535,这些端口号一般不会固定分配给某个服务,也就是说许多服务都可以使用这些端口。只要运行的程序向系统提出访问网络的申请,那么系统就可以从这些端口号中分配一个供该程序使用。

TCP通常使用IP作为网络层协议,这是TCP数据被封装在IP数据包内。TCP数据段由TCP Header(头部)和TCP Data(数据)组成。TCP最多可以有60个字节的头部,如果没有Options字段,正常的长度是20字节。
在这里插入图片描述

TCP建立连接的过程就是三次握手 断开就是四次挥手

UDP
在这里插入图片描述
当应用程序对传输的可靠性要求不高时,但是对传输速度和延迟要求较高时,可以用UDP协议来替代TCP协议在传输层控制数据的转发。UDP将数据从源端发送到目的端时,无需事先建立连接。UDP采用了简单,容易操作的机制在应用程序间传输数据,没有使用TCP中的确认技术或滑动窗口机制,因此UDP不能保证数据传输的可靠性,也无法避免接受到重复数据的情况。

UDP不提供重传机制,占用资源小,处理效率高。
一些时延敏感的流量,如语音,视频等,通常使用UDP作为传输层协议。

相对来说TCP会比较稳定,不会丢包;UDP会丢包,但是速度会比较快,用于视频和语音。

TCP/IP协议四层模型
在这里插入图片描述
数据先通过应用层,封装成不同的数据类型,然后传输时延等要求选择tcp或dup进行传输。然后网络层加上自己的ip和对方的ip,然后数据链路层加入下一跳的mac地址,比如中间要经过的不同路由器的mac地址。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值