欢迎进入访问本站!

tcpudp,tcpudp协议号

股票基金 2024-12-12 21:10:15

TC与UD

TC(传输控制协议)和UD(用户数据报协议)是网络通信中的两种基本协议。它们分别适用于不同的应用场景,具有各自的特点和优势。

1.TC协议详解

1.1TC连接状态

TC传输是有状态的,这意味着TC会记录自己发送消息的状态,如消息是否发送了、是否被接收了等。为此,TC需要维持复杂的连接状态表。

1.2TC协议特点

-可靠性:TC通过序列号、确认应答、重传机制、流量控制和拥塞控制等手段确保数据的正确传输。 基于字节流:TC将数据视为无结构的字节流,发送方和接收方的缓冲区大小可以不一致。

2.UD协议详解

2.1UD协议特点

与TC不同,UD是一种无连接的、不可靠的、基于数据报的传输层通信协议。

无连接:UD不需要建立连接,发送数据前不需要进行握手。

不可靠:UD不保证数据的可靠传输,可能会出现数据丢失或重复。

基于数据报:UD将数据分割成数据报进行传输,数据报之间相互独立。

2.2UD应用场景

-端口使用:端口137、138和139是用于NetIOSNameService的,其中UD端口用于通过网上邻居传输文件,而TC端口则用于进入的连接试图获得NetIOS/S。

Windows文件和打印机共享:这个协议被用于Windows文件和打印机共享以及Sama。

WinsRegistration:WinsRegistration也使用此端口。

3.UD协议端格式

3.1UD报文格式

UD报文的格式简单,使用定长报头将报头和有效载荷进行分离。通过目的端口号可以知道将报文的有效载荷交付给上层的哪个协议。

3.2UD首部格式

UD有两个字段,数据字段和首部字段。首部字段包括源端口号、目的端口号、UD长度和校验和等。

4.测试套接字编程通信

在测试套接字编程通信时,先确保C/S能互相ing通,且双方主机防火墙允许目的端口号为“创建的端口号”的数据包通过。

5.UD套接字编程

5.1UDClient.y

fromsocketimort

创建UD客户端套接字

client_socket=socket(AF_INET,SOCK_DGRAM)

设置服务器地址和端口

server_address=('localhost',12345)

message='这是UD客户端发送的数据'

client_socket.sendto(message.encode(),server_address)

data,server=client_socket.recvfrom(4096)

rint('从服务器接收到的数据:',data.decode())

关闭套接字

client_socket.close()

通过以上内容,我们可以了解到TC和UD协议的基本概念、特点和应用场景。在实际应用中,选择合适的协议可以更好地满足我们的需求。

Copyright锦轶志行 备案号: 蜀ICP备2023028467号-3  站点地图