多线程处理连接的时候需要注意一个线程直接的全局变量是共享的,所以每个连接对应的套接字句柄应该保存在线程内部。
TCP/IP协议实际上是由一组协议组成的,通常也称作TCP/IP协议簇。
Linux操作系统从一开始就提供网络功能,并且,Linux上的socket库兼容BSD socket库,为开发网络应用提供良好的支持。
由于不同类型的网络之间传输的网络报文长度是不同的,为了能适应在不同的网络中传输TCP/IP协议报文,IP协议提供分段机制帮助
数据包穿过不同类型的网络。
3 面向连接的echo服务编程实例
因此,使用select()和poll()函数可以显著提高网络应用程序的工作效率。
Linux操作系统从一开始就提供网络功能,并且,Linux上的socket库兼容BSD socket库,为开发网络应用提供良好的支持。
TCP协议层处理完毕后,把其余数据交给应用层程序处理,如FTP的服务程序和客户程序。
无连接的套接字通信比较简单,本节给出一个获取时间的例子,服务端程序time_serv.
#include <sys/socket.
由于不同类型的网络之间传输的网络报文长度是不同的,为了能适应在不同的网络中传输TCP/IP协议报文,IP协议提供分段机制帮助
数据包穿过不同类型的网络。
UDP与TCP一样是传输层协议,但是UDP协议没有控制数据包的顺序和出错重发机制。
4 无连接的socket通信实现
TCP/IP协议簇介绍
网络协议一般都比较抽象,给人感觉枯燥。
由于不同类型的网络之间传输的网络报文长度是不同的,为了能适应在不同的网络中传输TCP/IP协议报文,IP协议提供分段机制帮助
数据包穿过不同类型的网络。
多线程处理连接的时候需要注意一个线程直接的全局变量是共享的,所以每个连接对应的套接字句柄应该保存在线程内部。
9.1.1 TCP/IP协议族
TCP/IP协议实际上是由一组协议组成的,通常也称作
TCP/IP协议簇。根据ISO/OSI参考模型对网络协议的规定,
对网络协议划分为7层。
评论0
最新资源