- 1、本文档共97页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
第13章网络编程;学习目标/Target;学习目标/Target;章节概述/Summary;目录/Contents;目录/Contents;网络概述;;;;;;;13.1.1协议与体系结构;TCP协议即传输控制协议(TransmissionControlProtocol),该协议是一种面向连接的、可靠的、基于字节流的传输协议。在传递数据之前,收发双方会先通过一种被称为“三次握手”的协商机制建立连接,为数据传输做好准备。为了防止报文段丢失,TCP会给每个数据段一个序号,使接收端按序号顺序接收数据。若接收端正常接收到报文段,向发送端发送一个确认信息;若发送端在一定的时延后未接收到确认信息,便假设报文段已丢失,并重新向接收端发送对应报文段。此外,TCP协议中定义了一个校验函数,用于检测发送和接收的数据,防止产生数据错误。;13.1.1协议与体系结构;13.1.1协议与体系结构;13.1.1协议与体系结构;13.1.1协议与体系结构;13.1.1协议与体系结构;;;13.1.2数据传输流程;13.1.2数据传输流程;体系结构中各层的实现建立在其下一层所提供的服务上,且本层继续向上层提供服务,各层之间的常用协议以及层级关系如图所示。;;;C/S架构与B/S架构示意图如图所示。;;;;;;socket网络编程基础;;;通过socket()方法创建socket对象,示例代码如下:;;;;;;;;;;;;假设当前服务器的socket为socket_server,主机名为“192.168.43.31”,端口号为“3456”,那么bind()的用法如下:;;内核为监听套接字维护了两个队列:已连接队列和未连接队列。完成三次握手过程的客户端对应的套接字将被添加到已连接队列中,处于半连接状态的客户端对应的套接字将被添加到未连接队列中。若未连接队列存满,再有新的客户端发起连接请求,该连接请求将被直接拒绝。;;假设客户端的socket对象为client_socket,则connect()方法的用法如下所示:;;send()、sendto()方法用于向目标进程发送数据,它们的语法格式分别如下:;;sendto()方法中的参数address本质为一个形如(hostname,port)的元组,用于指定目标进程的地址。send()、sendto()方法调用成功都会返回所发送数据的字节数,它们的用法如下所示:;13.2.3socket内置方法;close()方法用于关闭套接字。类似于文件,套接字也是系统中的一种资源,使用完毕的套接字应???时关闭。此外,一台主机中端口的数量是有限的,系统同样应关闭空闲的套接字,避免端口浪费。;;用户可根据“IP地址:端口号”访问网络中计算机的进程,不过难免有些别有用心之人利用此方式进行恶意访问。为避免其他人侵入计算机,运维人员通常会采取关闭冗余端口的措施进行预防,但计算机中拥有的端口数量较多,仅靠人力排查的方式显然是不可取的。因此,考虑通过编程解决这一问题。
本实例要求编写程序,扫描计算机端口,输出开放的端口号。;使用列表保存价格信息。
定义空列表用于保存用户选购商品的价格。
接收输入的最大价格和最小价格。
从价格列表中获取每个商品价格。
判断商品价格区间。
将商品价格进行排序。;在Chapter13项目中创建01_sacn.py文件。
在01_sacn.py中编写代码。
运行01_sacn.py文件。;基于UDP的网络聊天室;;;;;基于TCP的数据转换;;;13.4基于TCP的数据转换;13.4基于TCP的数据转换;12.4线程的概念;多学一招:端口保留;实例2:TCP文件下载;;;使用列表保存价格信息。
定义空列表用于保存用户选购商品的价格。
接收输入的最大价格和最小价格。
从价格列表中获取每个商品价格。
判断商品价格区间。
将商品价格进行排序。;在Chapter13项目中创建tcp_download.py文件。
在tcp_download.py中编写代码。
运行tcp_download.py文件。;TCP并发服务器;;;setblocking()的使用示例如下:;;;;;;;;;;;;;本章小结
您可能关注的文档
- Python程序开发案例教程(第2版)课件 第4章 列表与元组.pptx
- Python程序开发案例教程(第2版)课件 第1章 开启Python学习之旅.pptx
- Python程序开发案例教程(第2版)课件 第2章 数字类型与字符串.pptx
- Python程序开发案例教程(第2版)课件 第3章 流程控制.pptx
- Python程序开发案例教程(第2版)课件 第5章 字典和集合.pptx
- Python程序开发案例教程(第2版)课件 第6章 函数.pptx
- Python程序开发案例教程(第2版)课件 第7章 类与面向对象.pptx
- Python程序开发案例教程(第2版)课件 第8章 模块.pptx
- Python程序开发案例教程(第2版)课件 第9章 文件与文件路径操作.pptx
- Python程序开发案例教程(第2版)课件 第10章 错误和异常.pptx
- 石墨行业市场发展分析及发展趋势前景预测报告2025-2028版.docx
- 中国汽车后背胎罩行业市场发展前景及发展趋势与投资战略研究报告2025-2028版.docx
- 中国液体电加热器行业市场发展前景及发展趋势与投资战略研究报告2025-2028版.docx
- 中国防寒滑雪面罩行业发展趋势及发展前景研究报告2025-2028版.docx
- 全球及中国二水氟化钡行业市场发展现状及发展前景研究报告2025-2028版.docx
- 中国微型光电开关行业市场发展前景及发展趋势与投资战略研究报告2025-2028版.docx
- 低跟鞋行业行业风险投资发展分析及投资融资策略研究报告2025-2028版.docx
- 中国硅橡胶绝缘管行业市场发展前景及发展趋势与投资战略研究报告2025-2028版.docx
- 中国应力仪行业发展分析及发展前景与趋势预测研究报告2025-2028版.docx
- 中国磷肥行业发展趋势与投资战略研究报告2025-2028版.docx
最近下载
- 《登岳阳楼》读记资料(文言词句释义、作文素材提炼、文化常识梳理、名句默写精选).doc VIP
- 患者需求分析与服务对策.ppt VIP
- 肺穿刺活检后期护理.pptx VIP
- 高考英语语法专项课件.ppt
- 2025年风力发电站运行维护与管理全面合作协议.docx VIP
- 2025湖南环境生物职业技术学院招聘46人笔试备考试题及答案解析.docx VIP
- 2023年版:静脉血栓栓塞症机械预防中国专家共识.pptx VIP
- 《六国论》读记资料(文言词句释义、作文素材提炼、文言知识归纳、文化常识梳理、名句默写精选).doc VIP
- 烧结多孔砖砌体施工工艺标准.docx VIP
- 梁实秋与《莎士比亚全集》().doc VIP
文档评论(0)