seg*_*ult 8 c c++ sockets networking network-programming
我正在编写简单的客户端 - 服务器程序.
客户端使用UDP或TCP向服务器发送一些消息.服务器必须能够支持UDP和TCP.
如果客户端使用UDP发送消息,则客户端中的方法调用序列socket(),bind(),sendto(),recvfrom(),close()
和服务器中的方法调用序列socket(),bind(),sendto(),recvfrom(),close()
.
如果它使用TCP,则服务器中的呼叫顺序为
socket(),bind(),listen(),accept(),send(),recv(),close()
.在客户端是
socket(),bind(),connect(),send(),recv(),close()
在我的程序中,用户/客户端在开始时选择他想要使用UDP或TCP的内容.所以,我的主要问题是如果客户端使用TCP或UDP发送消息,我如何知道或区分服务器端.如果它使用TCP,我必须调用listen(),accept(),send(),recv(),如果它使用UDP,我不调用listen(),accept()但调用sendto()和recvfrom() .
那么,我如何在开始时区分/了解这一点,以便我可以进行适当的函数调用.
谢谢.
Mic*_*ker 17
数据包到达你面前,你不知道它是否是UDP
或TCP
.
因此UDP
,TCP
如果您希望双向请求,则希望绑定到套接字和套接字.
一旦你这样做了,你就知道你收到数据包的套接字通过了哪种方式.
归档时间: |
|
查看次数: |
7365 次 |
最近记录: |