网络编程

TCP协议(Transmission Control Protocol,传输控制协议)为应用层提供可靠的、面向连接的、基于流(stream)的服务。TCP协议使用超时重传、数据确认等方式来确保数据包被正确的发送到目的,因此TCP服务是可靠的。使用TCP协议通信的双方必须先建立TCP连接,并且在内核中为该连接维持一些必须的数据结构。当通信结束时,双方必须关闭连接以释放这些内核数据。

UDP协议(User DataGram Protocol,用户数据报协议)则与TCP协议完全相反,它为应用层提供不可靠、无连接和基于数据报的服务。不可靠意味着UDP协议无法保证数据从发送端正确的传送到接收端。如果数据在中途丢失,或者目的端通过数据校验发现数据错误而将其丢弃,则UDP协议只是简单的通知应用层发送失败。因此使用UDP协议的应用程序通常要自己处理数据确认、超时重传等逻辑性。

struct sockaddr_in     {        short int sin_family;  /* Internet地址族 */      

                                            unsigned short int sin_port;  /* 端口号 */        

                                             struct in_addr sin_addr;   /* IP地址 */      

                                            unsigned char sin_zero[8];  /* 填0 */      };        编程中一般并不直接针对sockaddr数据结构操作,而是使用与sockaddr等价的sockaddr_in数据结构

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值