Linux上的套接字使用

来源:互联网 发布:贵阳数据交易中心 编辑:程序博客网 时间:2024/05/01 00:20

   有幸参与了实验室的一个任务,主要是在Linux上的套接字使用上面做了一些工作;有些收获如下:

   1。开发的Flash应用程序不可以直接监听建立套接字,只可以建立基于TCP的客户端套接字,采取的办法就是另外运行一个独立的应用程序来进行对其要发送的数据进行转发。

   2。使用TCP方式的套接字,客户端不需要绑定地址与端口,可以由系统随机指定,但是服务端的监听套接字就必须要与一个指定的监听地址与监听套接字进行绑定,至于连接时生成的连接套接字则不需要进行指定其地址。   3。对于UDP方式的套接字则可以采取两种方式:服务端与客户端的连接套接字都不是必须绑定具体的地址,因为是面向非连接,所以不绑定也可以发送也不会报错。但是发送的结果是不知道谁会收到。所以可以采取以下两种方式:1)服务端绑定一个客户端知道的地址,以让客户端做为目的地址进行发送,而客户端则根据服务端的发送包里面来获取客户端的套接字所在的地址与端口从而进行回复。但是这种方式不常用。因为端口比较随机。2)服务端与客户端都与固定的地址以及端口进行绑定,从而可以使相互之间都可以固定的端口进行传输。这种方式较常用。两端统一端口。本程序中即使用这种方式。

   4。对于TCP监听套接字可以生成很多的连接套接字,在本程序中不行是因为没有建立一个连接生成套接字数组,所以只可以生成一个连接套接字,也就是只可以生成一个连接,如果要改变这种状况,则可以建立一个套接字数组,来保存生成的连接套接字,从而可以对多点的连接。以前的Win下面是这样实现。

   5。对于UDP的广播以及组播(TCP不可以)地址的设定要注意一下。这里设定的是192.168.38.255/不可以设定成255.255.255.255。对于全1地址要进行相应的设置,否则不可以用来做为广播地址。

                          

原创粉丝点击