传输层(Transport Layer)

本文深入解析传输层在网络通信中的核心作用,包括其主要功能、提供的服务类型,以及TCP和UDP这两种关键协议的区别与应用场景。此外,还介绍了如何通过端口号区分不同的服务与会话。

传输层是整个网络的关键部分,它是实现两个用户进程间端到端的可靠通信,处理数据包的错误,数据包的次序,以及一些其他关键传输问题。它向下(七层模型的向下)是通信服务的最高层,弥补通信子网的差异和不足,而向上是用户功能的最底层。


主要功能:建立、维护和拆除传输层的连接,向网络层提供合适的服务。提供端到端的错误恢复和流量控制,向会话层提供独立于网络层的传送服务和可靠的透明数据传输。


传输层的相关协议

TCP(Transmission control protocol传输控制协议)

UDP(User Datagram Protocol用户数据报协议

它们涉及服务使用的端口号,主机根据端口号识别服务,区分会话。


端口:如WWW服务端口号:80  Telnet服务端口号:23等

C:WINDOWS\system32\drivers\etc\services 记录了服务名称和对应的端口号


区分会话:源IP,源端口号,目标IP,目标端口号,四者共同唯一标识一个会话。


命令:netstat[空格] -n

可以获取其他应用使用的端口和IP等



传输层Transport Layer)在网络通信中扮演着重要角色,它负责在终端系统之间提供端到端的通信服务,主要功能是将应用层的消息进行分段处理后传入网络层,以及在接收端将分段重新装配成完整的消息后传入应用层 [^3]。 在BLE Mesh蓝牙组网技术中,传输层可分为上传输层(Upper Transport Layer)和下传输层(Lower Transport Layer)。上传输层会发送或接收Upper Transport Control PDU,这是一种协议数据单元,用于传输特殊的“传输控制消息”,像与“友谊”相关的心跳和消息等,目的是实现低功耗节点和好友节点之间的通信,以节省电池寿命和网络资源 [^1]。 下传输层的分段消息包括分段接入层消息和分段控制消息。分段接入层消息用于传输来自访问层的应用消息或配置消息,长度为5 - 16字节,由1字节控制字段和4 - 15字节上层传输层接入消息PDU组成;分段控制消息用于传输来自上层传输层的控制消息,长度为5 - 12字节,由1字节控制字段和4 - 11字节参数字段组成 [^2]。 在互联网协议里,传输层也有多种协议,比如TCP和UCP。TCP是可靠的、有序的,具备拥塞控制、流控制和连接建立等功能;UCP则是不可靠的、无序的,仅帮助IP实现最基本的功能,不过两者都无法保障延迟和带宽 [^3]。同时,传输层还涉及一些常见的协议,如HTTP用于万维网、FTP用于数据传输、SMTP用于发送邮件、IMAP用于接收邮件 [^4]。 此外,为了确保发送方和接收方通信内容在传输过程中未被改变,可使用密码散列函数(Hash函数)。通过秘密商定一个鉴别密钥,计算Hash(d + s)生成报文鉴别码MAC来验证报文完整性 [^5]。 ### 代码示例 以下是一个简单的Python示例,模拟传输层将消息分段和重新装配的过程: ```python # 发送端:将消息分段 def break_message(message, segment_size): segments = [] for i in range(0, len(message), segment_size): segments.append(message[i:i + segment_size]) return segments # 接收端:将分段重新装配成消息 def reassemble_message(segments): return ''.join(segments) # 示例消息 message = "This is a test message for transport layer." # 分段大小 segment_size = 5 # 发送端分段 segments = break_message(message, segment_size) print("Segments:", segments) # 接收端重新装配 reassembled_message = reassemble_message(segments) print("Reassembled message:", reassembled_message) ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值