Python中的Socket编程

2024-05-19 08:12:18 发布

您现在位置:Python中文网/ 问答频道 /正文

我最近用Python做了一些网络编程,我想确认一下客户端和服务器之间的流程:

  • 服务器监听给定的 播发端口(9999)
  • 客户端通过创建新的套接字(例如1111)连接到服务器
  • 服务器接受客户机请求并自动生成一个新的套接字(????)它现在将处理客户端和服务器之间的通信

如您所见,在上述流程中,涉及3个套接字:

  • 侦听客户端的服务器套接字
  • 客户端生成的套接字
  • 服务器生成的用于处理客户端的套接字

我知道获取前两个套接字(9999和1111)的端口,但不知道如何获得与服务器上的客户端通信的“真正”端口侧面。那个我现在使用的代码片段是:

def sock_request(t):
    s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
    s.connect(('localhost', 9999))
    print('local sock name: ' + str(s.getsockname()))
    print('peer sock name: ' + str(s.getpeername()))
    s.send('a' * 1024 * int(t))
    s.close()

如果您能在服务器上获得与客户机实际通信的“端口”号,我们将不胜感激。蒂娅。在


Tags: 端口代码name网络服务器客户端客户机def

热门问题