电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

pythonsocket网络编程实验报告VIP免费

pythonsocket网络编程实验报告_第1页
pythonsocket网络编程实验报告_第2页
pythonsocket网络编程实验报告_第3页
网络编程实验报告 py thon_socket 网络编程 一、TCP 编程 (一)、建立一个 TCP 服务器连接需要 6 个步骤: 1. 创建 socket 对象。调用 socket 构造函数: socket=socket.socket(familly,type) family的值可以是 AF_UNIX(Unix域,用于同一台机器上的进程间通讯),也可以是 AF_INET(对于 IPV4 协议的 TCP 和 UDP),至于 type 参数,SOCK_STREAM(流套接字)或者 SOCK_DGRAM(数据报文套接字),SOCK_RAW(raw 套接字)。 2. 将 socket 绑定(指派)到指定地址上,socket.bind(address) address 必须是一个双元素元组,((host,port)),主机名或者 ip 地址+端口号。如果端口号正在被使用或者保留,或者主机名或 ip 地址错误,则引发 socke.error 异常。 3. 绑定后,必须准备好套接字,以便接受连接请求。 socket.listen(backlog) backlog 指定了最多连接数,至少为 1,接到连接请求后,这些请求必须排队,如果队列已满,则拒绝请求。 4. 服务器套接字通过 socket 的 accept 方法等待客户请求一个连接: connection,address=socket.accept() 调用 accept 方法时,socket 会进入'waiting'(或阻塞)状态。客户请求连接时,方法建立连接并返回服务器。accept 方法返回一个含有俩个元素的元组,形如(connection,address)。第一个元素(connection)是新的 socket 对象,服务器通过它与客户通信;第二个元素(address)是客户的 internet 地址。 5. 处理阶段,服务器和客户通过 send 和 recv 方法通信(传输数据)。 服务器调用 send,并采用字符串形式向客户发送信息。send 方法返回已发送的字符个数。服务器使用 recv 方法从客户接受信息。调用 recv 时,必须指定一个整数来控制本次调用所接受的最大数据量。recv 方法在接受数据时会进入'blocket'状态,最后返回一个字符串,用它来表示收到的数据。如果发送的量超过 recv 所允许,数据会被截断。多余的数据将缓冲于接受端。以后调用 recv 时,多余的数据会从缓冲区删除。 6. 传输结束,服务器调用socket 的close 方法以关闭连接。 (二)、建立一个 TCP 客户端连接则需要 4 个步骤: 1. 创建一个 socket 以连接服务器 socket=socket.socket(family,type) 2. 使用socket 的connect 方法连接服务器 socket.connect((host,port)) 3. 客户和服务器通过 send 和 recv 方法通信。 4. 结束后,客...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

确认删除?
VIP
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群
客服邮箱
回到顶部