标题: TCP与UDP网络编程的区别 [打印本页]

作者: shiman999    时间: 2023-3-30 09:03
标题: TCP与UDP网络编程的区别
1、socket()的参数不同
     1)TCP:在connect/accept时确定地址信息
   2)UDP在sendto/recvfrom收发数据函数,指定地址信息
      (1)UDP:shutdown函数无效
        (2)UDP Server不需要调用listen和accept

2、TCP编程的客户端一般步骤:
  1)创建一个socket,用函数socket();
  2)设置socket属性,用函数setsockopt();* 可选
  3)用函数bind();绑定IP地址、端口等信息到socket上,* 可选
  4)设置要连接的对方的IP地址和端口等属性;
  5)连接服务器,用函数connect();
  6)收发数据,用函数send()和recv(),或者read()和write();
  7)关闭网络连接;
3、TCP编程的服务器端一般步骤:
  1)创建一个socket,用函数socket();
  2)设置socket属性,用函数setsockopt(); * 可选
  3)用函数bind(); 绑定IP地址、端口等信息到socket上
  4)开启监听,用函数listen();
  5)接收客户端上来的连接,用函数accept();
  6)收发数据,用函数send()和recv(),或者read()和write();
  7)关闭网络连接;
  8)关闭监听;
4、UDP编程的客户端一般步骤:
  1)创建一个socket,用函数socket();
  2)设置socket属性,用函数setsockopt();* 可选
  3)用函数bind(),绑定IP地址、端口等信息到socket上
  4)设置对方的IP地址和端口等属性;
  5)发送数据,用函数sendto();
  6)关闭网络连接;
5、UDP编程的服务器端一般步骤:
  1)创建一个socket,用函数socket();
  2)设置socket属性,用函数setsockopt();* 可选
  3)用函数bind();绑定IP地址、端口等信息到socket上,
  4)循环接收数据,用函数recvfrom();
  5)关闭网络连接;





欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1