- 1、本文档共17页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Red_Hat_Linux_6大全29.pdf
下载
下载
第2 9章 网 络 编 程
本章内容:
• 网络概念
• TCP客户例子
• TCP服务器例子
• UDP例子
• 阻塞和非阻塞描述符
• UDP的I / O多路复用
• TCP的I / O多路复用
• 高级论题
网络和L i n u x是自然结合。毕竟L i n u x是一种I n t e r n e t的产品,因为大多数开发者是通过电子
邮件、W W W和U s e n e t新闻跨越世界进行协作(并且仍在协作)。另外, L i n u x是基于U N I X的,
是开发网络技术的许多通用计算机的操作系统之一。
L i n u x是一个优化的网络编程平台,因为 L i n u x具有成熟和全功能的网络特性。由于 L i n u x
提供套接字 ( s o c k e t s )接口的全面支持,在其他版本的 U N I X上开发的大多数程序,只要少量修
改或不修改就可以建立并运行在L i n u x上。有关U N I X网络方面的教科书和文档也可以完全应用
于L i n u x。
本章利用 P e r l例子来介绍网络编程概念,并说明如何简捷地创建 L i n u x可操作的网络程
序。之所以选择 P e r l,是因为P e r l使你能集中注意力于网络编程概念,而不是应用开发问题
和编程环境。在指导中所涉及的脚本也包括在本书附带的 C D - R O M上。注意,在开发这些
脚本时,要强调的是,说明关键的网络编程概念,而不是编程风格、健壮性或如何用 p e r l来
编程。理解这些例子只需要 P e r l的基本知识,对 C或C++程序员来说,这些例子当然是很
清楚的。有关 P e r l语言的详细信息和如何把 P e r l语言用于各种各样的任务中,参见第 3 1章
“P e r l编程”。
本章并不是详尽的,限于时间和篇幅,不允许覆盖像协议层和路由这类的概念。本章对网
络编程的入门进行指导并强调积极参与练习。
29.1 网络概念
本节讨论网络基础。你将学习什么是网络通信的必要部分,程序如何利用这些部分通过获
取网络信息的简单程序来建立连接,并以此连接另一个程序。在本节的最后,你对网络地址、
套接字及T C P(Transmission Control Protocol,传输控制协议)与其极相似的U D P(User Datagram
P r o t o c o 1,用户数据报协议)之间的差别会有清楚的理解。
清单 2 9 - 1含有一个利用 T C P对服务器创建连接的 P e r l函数。你可以在 C D - R O M上的
n e t w o r k . p l中找到这个函数。
清单29-1 makeconn()—创建T C P连接
这个过程可创概括为三个基本步骤:
1) 构成地址。
2) 创建套接字。
3) 建立连接。
网络地址通过在第11行和1 3行中检索地址信息,然后在第2 1行中合并而构成。在第2 7行中,
使用在第1 5行中得到的协议信息创建套接字(协议信息实际上可被认为是地址的一部分)。在第
2 8行中,最后建立连接。
29.1.1 构成网络地址
在构成网络地址及其连接中所涉及的步骤,提供了有关观察网络通信如何运行的框架。我
将花些时间来讨论这个过程的每个部分,以便让你准备好积极参加指导。关于 T C P / I P和网络的
详细信息,请参考第1 7章“T C P / I P网络管理”。
如果你曾经为P C或工作站配置过 I n t e r n e t的连接;就可能见到类似 1 9 2 . 9 . 2 0 0 . 1 0或1 0 . 7 . 8 . 1 4
的I n t e r n e t地址(或 I P地址)。这种地址称为打点十进制格式 (dotted-decimal format),像计算中的
许多情况一样,这是为使人们易读的一种网络地址的表示。实际用于通信的计算机,路由器
和其他I n t e r n e t设备的表示法是3 2位数通常叫做规范地址 (canonical address)。当判断这个数时,
把它分成为四个较小的八位( 1字节)值,打点十进制格式的大致方式是以小数点分隔四个数所
组成。
第 2 9章 网 络 编 程 5 4 3
下载
5 4 4 第四部分 L i n u x编程
下载
i n t e r n e t w o r k(网际互连)或缩写为 i n t e r n e t,由连接两个或更多的网络所组成。在此, i n t e r n e t
是指任何两个网络,而不是指 I n t e r n e t,I n t e r n e t已经成为包含世界上大多数网络的专用名字。
I n t e r n e t协议( I P )就是考虑到这类构形所设计的。为了
您可能关注的文档
- PODNetworkNewsWinter2015.PDF
- PPR管施工对管道的检验和验收方法.pdf
- PPR给水管验收标准.pdf
- PrimaryESOLNewsMarch2016.PDF
- ProductNewsFORIMMEDIATERELEASE.PDF
- Publication3003-CHI812要求纳税人权利维护人办公室提.PDF
- Publicaton3104-CHI812关於紐约州工资收入税额减免的.PDF
- PyQt4的入门指南.pdf
- Pólya'sTheorem.PDF
- q'J'F;KFrst'uv;wvxy234z{.PDF
- 人教版九年级英语全一册单元速记•巧练Unit13【速记清单】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit9【速记清单】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit11【速记清单】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit14【单元测试·提升卷】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit8【速记清单】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit4【单元测试·提升卷】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit13【单元测试·基础卷】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit7【速记清单】(原卷版+解析).docx
- 苏教版五年级上册数学分层作业设计 2.2 三角形的面积(附答案).docx
- 人教版九年级英语全一册单元速记•巧练Unit12【单元测试·基础卷】(原卷版+解析).docx
文档评论(0)