- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
第9章网络编程Python是很强大的网络编程工具。Python有很多针对常见网络协议的库,这些库可以使我化集中精力在程序的逻辑处理上,而不是停留在网络实现的细节中。使用Python很容易写出处理公种协议格式的代码,Python在处理字节流的各种模式方面很擅长。
9.1初识网络编程自从互联网诞生以来,基本上所有程序都是网络程序,很少有单机版程序了。计算机网络把各个计算机连接到一起,让网络中的计算机可以互相通信。网络编程在程序中实现了两台计算机的通信。举个例子,当你使用浏览器访问淘宝网时,你的计算机和淘宝的某台服务器通过互联网连接起来了,淘宝的服务器就会把网页内容作为数据通过互联网传输到你的计算机上。由于你的计算机上可能不止有浏览器,还有微信、办公软件、邮件客户端等,不同程序连接的计算机也会不同,因此网络通信是两台计算机的两个进程之间的通信。比如,浏览器进程是和海宝服务器上某个Web服务进程通信,而微信进程是和腾讯服务器上某个进程通信。网络编程对所有开发语言都是一样的,Python也不例外。用Python进行网络编程就是在Python程序的进程内连接别的服务器进程的通信端口进行通信。
9.2TCP/IP简介大家对互联网应该很熟悉,计算机网络的出现比互联网要早很多。为了联网,计算机必须规定通信协议。早期的计算机网络都是由各厂商自己规定一套协议。如IBM和Microsoft都有各自的网络协议,互不兼容。这就好比一群人有的说英语,有的说中文为的说德语,但都只懂一种语言,因此只有说同一种语言的人可以交流,说不同语言的人就不行了为了把全世界所有不同类型的计算机都连接起来,必须规定一套全球通用协议。为了实现互联网这个目标,大家共同制定了互联网协议簇(InternetProtocolSuite)作为通用协议标准。Internet是由inter和net两个单词组合起来的,原意是连接“网络”的网络,有了Internet,只要支持这个协议,任何私有网络都可以连入互联网。
9.2TCP/IP简介瓦联网协议包含上百种协议标准,由于最重要的两个协议是TCP和IP协议,因此大家把互联网协议简称为TCP/IP协议。通信时双方必须知道对方的标识,好比发邮件必须知道对方的邮件地址。互联网上计算机的唯一标识就是IP地址,如192.168.12.27。如果一台计算机同时接入两个或更多网络(如路由器),就会有两个或多个卫地址,所以IP地址对应的实际是计算机的网络接口,通常是网卡。IP协议负责把数据从一台计算机通过网络发送到另一台计算机。数据被分割成一小块一小块然后通过IP包发送出去。由于互联网链路复杂,两台计算机之间经常有多条线路,因此路由器负责决定如何把一个IP包转发出去。IP包的特点是按块发送,途经多个路由,但不保证能到达,也不保证按顺序到达。IP地址实际上是一个32位整数(IPv4),以字符串表示的正地址实际上是把32位整数按8位分组后的数字表示(如192.168.0.1),目的是便于阅读。
9.2TCP/IP简介IPv6地址实际上是128位整数,是目前使用的IPv4地址的升级版,以字符串表示类似于2001:0db8:85a3:0042:1000:8a2e:0370:7334。TCP协议建立在IP协议之上。TCP协议负责在两台计算机之间建立可靠连接,保证数据包按顺序到达。TCP协议会通过握手建立连接,然后对每个IP包编号,确保对方按顺序收到,如果包丢掉了就自动重发。许多常用的更高级的协议都是建立在TCP协议基础上的,如用于浏览器的HTTP协议、发送邮件的SMTP协议等。
9.2TCP/IP简介一个IP包除了包含要传输的数据外,还包含源IP地址和目标IP地址、源端口和目标端口。端口有什么作用?两台计算机通信时,只发地址是不够的,因为同一台计算机运行着多个网络程序。一个IP包来了之后交给浏览器还是微信,需要用端口号进行区分。每个网络程序都向操作系统申请唯一的端口号,这样两个进程在两台计算机之间建立网络连接就需要各自的IP地址和端口号。一个进程也可能同时与多台计算机建立连接,因此它会申请很多端口。
9.3网络设计模块前面我们了解了TCP/IP协议、IP地址和端口的基本概念,下面我们开始了解网络编程。标准库中有很多网络设计模块,除了明确处理网络事务的模块外,还有很多模块是与网络相关的。接下来我们讨论其中几个模块。9.3.1Socket简介网络编程中有一个基本组件——套接字(
您可能关注的文档
- PPT任务3练习 植物的生长 .pdf
- Python程序开发实战入门第二章.pdf
- Python程序开发实战入门第二章.pptx
- Python程序开发实战入门第九章.pdf
- Python程序开发实战入门第七章.pdf
- Python程序开发实战入门第三章.pdf
- Python程序开发实战入门第三章.pptx
- 浙江国企招聘-2025年度台州天台县县属国有企业公开招聘12人备考题库含答案详解(黄金题型).docx
- 浙江国企招聘-2025年度台州天台县县属国有企业公开招聘12人备考题库含答案详解(夺分金卷).docx
- 浙江国企招聘-2025年度台州天台县县属国有企业公开招聘12人备考题库含答案详解(典型题).docx
- 学生道路安全教育培训课件.pptx
- 浙江国企招聘-2025年度台州天台县县属国有企业公开招聘12人备考题库含答案详解(培优b卷).docx
- 浙江国企招聘-2025年度台州天台县县属国有企业公开招聘12人备考题库含答案详解(研优卷).docx
- 2025-2026学年度苏科版八年级物理上册《光现象》专题训练试卷(详解版).docx
- 浙江国企招聘-2025年度台州天台县县属国有企业公开招聘12人备考题库含答案详解(名师推荐).docx
- 浙江国企招聘-2025年度台州天台县县属国有企业公开招聘12人备考题库含答案详解(a卷).docx
- 浙江国企招聘-2025年度台州天台县县属国有企业公开招聘12人备考题库含答案详解(培优).docx
- 浙江国企招聘-2025年度台州天台县县属国有企业公开招聘12人备考题库含答案详解(b卷).docx
- 基础强化人教版八年级上册物理光现象《光的反射》单元测评试题.docx
- 浙江国企招聘-2025年度台州天台县县属国有企业公开招聘12人备考题库及答案详解(新).docx
最近下载
- 电子技术课程设计报告---- 峰值检测系统.doc VIP
- GZ072 飞机维修赛项A模块评分标准A3(后台评分表)-2023年全国职业院校技能大赛赛项正式赛卷.pdf VIP
- GZ072 飞机维修赛项A模块评分标准A3(现场评分表)-2023年全国职业院校技能大赛赛项正式赛卷.pdf VIP
- 新生儿颅内出血护理查房.pptx VIP
- 文职文印员考试题及答案.doc VIP
- 文职文印员考试题及答案.doc VIP
- 课件:消防系统培训 (最全).ppt VIP
- 日立MCA(CA9)乘客电梯安装调试手册.pdf VIP
- GZ072 飞机维修赛项正式赛卷B2’查询记录单答案-2023年全国职业院校技能大赛赛项正式赛卷.docx VIP
- 脑血管搭桥术后的护理查房.pptx VIP
原创力文档


文档评论(0)