计算机网络----UDP通信过程(代码分析Java、C#)

UDP通信步骤

Java:

发送

1、创建socket对象,绑定到主机上的任意端口

2、创建数据数据包:创建数据,并new一个数据包对象把数据打包(数据、数据长度、接收方IP跟端口号)

3、调用socket对象的方法发送数据

4、关闭发送端

接收:

1、创建一个socket对象绑定到指定的本地端口(因为发送端要往这里发数据)

2、创建数据包用来接收数据:创建数组,并new一个数据包对象(数组,数据长度)

3、调用socket的方法接收数据

4、关闭接收端

unity scoket

服务器的客户机的区别在,服务器需要绑定终结点

服务器:事先不知到客户机的终结点,所以先收数据,获取终结点,再发

1、创建udp socket对象(第二个参数用户数据报,第3个参数是udp)

2、创建IP1

3、创建终结点1(IP1,端口号)

4、服务器的socket绑定终结点1(用来收数据)

5、创建终结点2用来被发送方填充端口号跟IP(用来保存发送方的终结点)(因为不允许空值,所以这边先赋一个值)

6、创建数组,用来收数据,

7、调用socket对象的方法接收数据(数组,终结点2)

8、创建数据

9、编码

10、调用socket对象的方法发送数据(数据、长度、终结点2)

客户机:已经知道服务器终结点,可以直接发

1、创建udp socket对象(第二个参数用户数据报,第3个参数是udp)

2、创建IP1

3、创建终结点1(IP1,端口号)服务器的终结点

4、创建数据

5、编码

6、调用socket对象的方法发送数据(数据、长度、终结点1)

7、创建终结点2用来被发送方填充端口号跟IP(用来保存发送方的终结点)(因为不允许空值,所以这边先赋一个值)

8、创建数组,用来收数据,

9、调用socket对象的方法接收数据(数组,终结点2)


unity udpclient

跟socket是一样的,只是不需要new udp socket而已
服务器:

1、创建终结点1,设定指定端口号

2、创建udpclient对象,绑定到终结点1(用来收数据)

3、创建终结点2用来被发送方填充端口号跟IP(用来保存发送方的终结点)(因为不允许空值,所以这边先赋一个值)

4、创建数组,用来收数据,

5、调用udpclient对象的方法接收数据(终结点2)

6、创建终结点3,任意预留端口号(动态端口)

7、创建udpclient对象绑定终结点

8、创建数据

9、编码

10、调用udpclient对象的方法发送数据(数据、长度、终结点2)

客户端:

1、创建终结点1,任意预留端口号(动态端口)

2、创建udpclient对象绑定终结点

3、创建终结点2(服务器)

4、创建数据

5、编码

6、调用udpclient对象的方法发送数据(数据、长度、终结点2)
7、创建终结点3,设定指定端口号

8、创建udpclient对象,绑定到终结点3(用来收数据)

9、创建终结点4用来被发送方填充端口号跟IP(用来保存发送方的终结点)(因为不允许空值,所以这边先赋一个值)

4、创建数组,用来收数据,

5、调用udpclient对象的方法接收数据(终结点4)


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值