导航:首页 > IDC知识 > socket服务器转发

socket服务器转发

发布时间:2021-01-23 13:49:54

1、java socket编程 服务器端 信息转发

以前抄写的,服务器和客户端的源代码:

http://hi.baidu.com/cliff77/blog/item/d819338f0162cae8f11f3660.html

http://hi.baidu.com/cliff77/blog/item/64055262040cbbdbe6113a63.html

2、关于java TCP socket 传输 服务器转发消息给客户端,客户端收到的消息与服务器转发的不一致

楼主,怎么个不一致法,要看看如何的逻辑代码。

3、socket编程。怎么实现数据包的转发?

C语言里的Sleep函数来可以实现DoEvent()的功源能
Remarks
A thread can relinquish the remainder of its time slice by calling this function with a sleep time of zero milliseconds.
一个线程能够呼叫这个函数时把参数设置成为0实现放弃所拥有的剩余时间片。

如果对您有帮助,请记得采纳为满意答案,谢谢!祝您生活愉快!

vaela

4、socket在制数据包转发器时,为什么一转发由客户端送过来的包,网站服务器就会强制中断连接?

代码没有错。
你调试一下,服务器端是否有把pTS->skClient关闭掉。或者客户端有没有把连接关闭掉。

5、Java socket 之服务端转发消息

服务器端一般抄会存储所有袭会话信息(在启动会话时),客户端A发送信息给服务器端 ,服务器端进@OnMessage 方法,通过url传参获取发送对象。

调用代码: 客户端B的session .getBasicRemote().sendText("发送的信息");

6、socket编程。怎么实现数据包的转发?C语言版的。

我也不知道····只好复制一份···共同学习~~ 要写网络程序就必须用Socket,这是程序员都知道的。而且,面试的时候,我们也会问对方会不会Socket编程?一般来说,很多人都会说,Socket编程基本就是listen,accept以及send,write等几个基本的操作。是的,就跟常见的文件操作一样,只要写过就一定知道。对于网络编程,我们也言必称TCP/IP,似乎其它网络协议已经不存在了。对于TCP/IP,我们还知道TCP和UDP,前者可以保证数据的正确和可靠性,后者则允许数据丢失。最后,我们还知道,在建立连接前,必须知道对方的IP地址和端口号。除此,普通的程序员就不会知道太多了,很多时候这些知识已经够用了。最多,写服务程序的时候,会使用多线程来处理并发访问。我们还知道如下几个事实:1。一个指定的端口号不能被多个程序共用。比如,如果IIS占用了80端口,那么Apache就不能也用80端口了。2。很多防火墙只允许特定目标端口的数据包通过。3。服务程序在listen某个端口并accept某个连接请求后,会生成一个新的socket来对该请求进行处理。于是,一个困惑了我很久的问题就产生了。如果一个socket创建后并与80端口绑定后,是否就意味着该socket占用了80端口呢?如果是这样的,那么当其accept一个请求后,生成的新的socket到底使用的是什么端口呢(我一直以为系统会默认给其分配一个空闲的端口号)?如果是一个空闲的端口,那一定不是80端口了,于是以后的TCP数据包的目标端口就不是80了--防火墙一定会组织其通过的!实际上,我们可以看到,防火墙并没有阻止这样的连接,而且这是最常见的连接请求和处理方式。我的不解就是,为什么防火墙没有阻止这样的连接?它是如何判定那条连接是因为connet80端口而生成的?是不是TCP数据包里有什么特别的标志?或者防火墙记住了什么东西?后来,我又仔细研读了TCP/IP的协议栈的原理,对很多概念有了更深刻的认识。比如,在TCP和UDP同属于传输层,共同架设在IP层(网络层)之上。而IP层主要负责的是在节点之间(End to End)的数据包传送,这里的节点是一台网络设备,比如计算机。因为IP层只负责把数据送到节点,而不能区分上面的不同应用,所以TCP和UDP协议在其基础上加入了端口的信息,端口于是标识的是一个节点上的一个应用。除了增加端口信息,UPD协议基本就没有对IP层的数据进行任何的处理了。而TCP协议还加入了更加复杂的传输控制,比如滑动的数据发送窗口(Slice Window),以及接收确认和重发机制,以达到数据的可靠传送。不管应用层看到的是怎样一个稳定的TCP数据流,下面传送的都是一个个的IP数据包,需要由TCP协议来进行数据重组。所以,我有理由怀疑,防火墙并没有足够的信息判断TCP数据包的更多信息,除了IP地址和端口号。而且,我们也看到,所谓的端口,是为了区分不同的应用的,以在不同的IP包来到的时候能够正确转发。TCP/IP只是一个协议栈,就像操作系统的运行机制一样,必须要具体实现,同时还要提供对外的操作接口。就像操作系统会提供标准的编程接口,比如Win32编程接口一样,TCP/IP也必须对外提供编程接口,这就是Socket编程接口--原来是这么回事啊!在Socket编程接口里,设计者提出了一个很重要的概念,那就是socket。这个socket跟文件句柄很相似,实际上在BSD系统里就是跟文件句柄一样存放在一样的进程句柄表里。这个socket其实是一个序号,表示其在句柄表中的位置。这一点,我们已经见过很多了,比如文件句柄,窗口句柄等等。这些句柄,其实是代表了系统中的某些特定的对象,用于在各种函数中作为参数传入,以对特定的对象进行操作--这其实是C语言的问题,在C++语言里,这个句柄其实就是this指针,实际就是对象指针啦。现在我们知道,socket跟TCP/IP并没有必然的联系。Socket编程接口在设计的时候,就希望也能适应其他的网络协议。所以,socket的出现只是可以更方便的使用TCP/IP协议栈而已,其对TCP/IP进行了抽象,形成了几个最基本的函数接口。比如create,listen,accept,connect,read和write等等。现在我们明白,如果一个程序创建了

7、C语言Socket服务器怎么给客户端发消息

socket 服务来器给指定的客户端发自消息该怎么处理(tcp)(c语言)
多个客户端之间进行通讯,通过服务器转发的形式,现在客户端1请求向客户端2发送消息,先把消息发送到服务器,服务器怎么才能把消息转发到客户端2而不是转发给客户端3或者他自己。

8、c#socket怎样让服务器端转发数据QQA,B(a发送数据到服务端,服务端立即转发到b)

这个类似于聊天室的信息转发,建议建立一个数据结构,如
[SerializableAttribute]
[ComVisibleAttribute(true)]

public class SendType

{
public string SendName {get;set;}
public string RecName {get;set;}
public string Data {get;set;}

}
新建一个结构回变量,public SendType SendData = new SendType();
SendData.SendName = "A";
SendData.RecName = "B";
SendData.Data = "Hello";
如此初始化答后,将变量序列化后,提取byte[]数组直接发送,服务器再接收后再反序列化,转发。
[SerializableAttribute]
[ComVisibleAttribute(true)]

两个标记就是标记SendType类为可序列化,否则会造成不能序列化的编译错误。

与socket服务器转发相关的知识