C# Socket和TCP连接的区别


网络通信七层参考模型介绍:
物理层:  HUB,网线
链路层:  MAC,ARP,交换机
网络层:IP,ICMP,IGMP,路由器
传输层:  TCP,UDP
会话层:  HTTP,SMTP,FTP,POP3
表示层:  SOAP,SSL
应用层:HTTP,POP3等
 
TCP和Socket的区别:
Socket是对网络层操作。
TcpClient是对传输层的操作。
 
用Socket访问HTTP服务:
网络层 --> 传输层 --> 会话层
用TcpClient访问HTTP服务:
传输层 --> 会话层
 
网络层层的协议是IP,传输层的协议是TCP。最本质的区别就是,网络层把数据添加到IP地址,IP为所有的系统端口服务,传输层只添加到端口,即操作系统的服务端口。网络层/输出层提供了面向连接和无连接的服务方式。
 
C#中TcpClient和Socket的应用选择:
只考虑:主机,端口,数据传输时,用TcpClient,或UdpClient;
要考虑:IP封包,路由,IP数据包时,用Socket;


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM