您的位置:首页 > 理论基础 > 计算机网络

TCP和UDP套接字编程基本流程

2014-02-21 15:14 204 查看

本博客已迁往http://coredumper.cn

TCP套接字编程

服务器:

1.创建套接字描述符(socket)

2.设置服务器的IP地址和端口号(需要转换为网络字节序的格式)

3.将套接字描述符绑定到服务器地址(bind)

4.将套接字描述符设置为监听套接字描述符(listen),等待来自客户端的连接请求,监听套接字维护未完成连接队列和已完成连接队列

5.从已完成连接队列中取得队首项,返回新的已连接套接字描述符(accept),如果已完成连接队列为空,则会阻塞

6.从已连接套接字描述符读取来自客户端的请求(read)

7.向已连接套接字描述符写入应答(write)

8.关闭已连接套接字描述符(close),回到第5步等待下一个客户端的连接请求

客户端:

1.创建套接字描述符(socket)

2.设置服务器的IP地址和端口号(需要转换为网络字节序的格式)

3.请求建立到服务器的TCP连接并阻塞,直到连接成功建立(connect)

4.向套接字描述符写入请求(write)

5.从套接字描述符读取来自服务器的应答(read)

6.关闭套接字描述符(close)

UDP套接字编程

服务器:

1.创建套接字描述符(socket)

2.设置服务器的IP地址和端口号(需要转换为网络字节序的格式)

3.将套接字描述符绑定到服务器地址(bind)

4.从套接字描述符读取来自客户端的请求并取得客户端的地址(recvfrom)

5.向套接字描述符写入应答并发送给客户端(sendto)

6.回到第4步等待读取下一个来自客户端的请求

客户端:

1.创建套接字描述符(socket)

2.设置服务器的IP地址和端口号(需要转换为网络字节序的格式)

3.向套接字描述符写入请求并发送给服务器(sendto)

4.从套接字描述符读取来自服务器的应答(recvfrom)

5.关闭套接字描述符(close)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  tcp udp 套接字