网络编程书籍讲义.pptx
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《网络编程书籍讲义.pptx》由会员分享,可在线阅读,更多相关《网络编程书籍讲义.pptx(31页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第1页6.1 Windows的TCP/IP实现 6.1.1Windows TCP/IP提供的功能与服务在Windows下的TCP/IP协议主要提供了网络的互联与各种应用层服务功能,具体功能如下:(1)企业网络互联功能:由于IP协议具有路由功能,因此安装了TCP/IP协议Windows操作系统可以实现不同网络之间的互联功能。(2)不同系统之间的访问和文件传输功能:Windows网络系统中提供了应用层文件传输协议(FTP)和远程登录协议(Telnet)等程序,可以完成不同系统之间访问和传输文件等功能。(3)提供了客户机/服务器开发应用系统框架:Windows的网络系统提供了一个健壮的、可扩展的、跨
2、平台的客户/服务器开发框架。(4)提供了访问Internet的功能:通过Windows的TCP/IP协议可以与外部Internet相联,从而访问外部Internet中的各种资源。第1页/共31页第2页6.1 Windows的TCP/IP实现 6.1.1Windows TCP/IP提供的功能与服务如果安装的系统是Windows服务器版的操作系统,则网络服务有:(1)客户机和服务器的动态主机配置协议(DHCP)。(2)Windows Internet名字服务(WINS),即用来命名客户机和服务器的一种基本网络输入/输出系统(NetBIOS)。(3)客户机和服务器域名系统(DNS)。(4)拔号支持(
3、基于点到点协议或串行线路)。(5)点到点隧道协议(PPTP)和用于虚拟专用网络的第二层隧道协议(L2TP)。(6)TCP/IP网络打印(Lpr/Lpd)。(7)简单网络管理协议(SNMP)代理。(8)NetBIOS接口。(9)Windows套接口版本2(Winsock2)接口。(10)基于IP路由器的Microsoft网络浏览支持。第2页/共31页第3页6.1 Windows的TCP/IP实现 6.1.1Windows TCP/IP提供的功能与服务(11)高性能的Microsoft Internet信息服务(IIS)。(12)基本的TCP/IP连接工具,包括:Finger、FTP、Rcp、Re
4、xec、Rsh、Telnet和Tftp。(13)面向简单网络协议的客户机和服务器软件。(14)TCP/IP管理和诊断工具,包括:Arp、Hostname、Ipconfig、Lpq、Nbtstat、Netstat、Ping、Route、Nslookup、Tracert和Pathping。第3页/共31页第4页6.1 Windows的TCP/IP实现 6.1.2Windows TCP/IP体系结构Microsoft TCP/IP的核心协议元素、服务及它们之间的接口如图6-1所示。第4页/共31页第5页6.1 Windows的TCP/IP实现 NetBIOS应用程序RPC应用程序Win32Wnet/
5、Winlnet应用程序Windows套接口应用程序应用接口应用和用户模式服务RPCWNetWinlnetNetBIOS支持核心模式用户模式Windows套接口命名管道命名管道重定向服务器NetBTAFD传输驱动程序接口TDITCP/UDPIPICMPIP转发器IP转发器IGMPARPNetBTNetBTNetBTNetBTNetBTNetBT包分类器通信流控制包调度器包队列包队列包队列包队列包队列网络设备接口规范NDISNDIS包装器X.25帧中继ATM今牌环FDDI以太网NDIS微端口包装PPTPAsynchX.25ISDN图6-1 Windows 2000中的TCP/IP网络体系结构第5页
6、/共31页第6页6.1 Windows的TCP/IP实现 6.1.3网络接口层从图6-1可以看出,Microsoft网络协议栈中物理层和数据链路层是网络设备接口规范NDIS下面定义的部分,该部分的内容相当于TCP/IP协议栈中网络接口层的内容。下面我们介绍在Windows下网络接口层所包含的内容。1.Windows TCP/IP支持的物理网络Windows 2000 TCP/IP提供了对以下物理网络的技术支持:光纤分布式数据接口(FDDI)。令牌环(IEEE 802.5)。专用广域网(WAN)链接,如数据电话数字服务(DDS)和T载波(部分T1、T1和T3)。WAN拔号或永久电路交换服务,如模
7、拟电话、ISDN和xDSL。WAN包交换服务,如X.25、帧中继和ATM。以太网。第6页/共31页第7页6.1 Windows的TCP/IP实现 6.1.3网络接口层2.网络设备接口规范NDIS网络设备接口规范NDIS和网卡驱动程序直接进行通信,在NDIS 5.0中除了完成协议栈中所定义的基本功能外,还包括网络电源管理、即插即用、快速包转发、QoS等扩展功能。NDIS电源管理提供了用户和系统在适当条件下,切断网络适配器的电源功能。例如,用户可能想使计算机进入睡眠状态,或者系统可能因为键盘或鼠标不活动而请求改变电源管理级别,另外,如果网络适配器支持的话,断开网络连线也能启动该请求。在这种情况下,
8、系统会在切断网络适配器电源之前等待一段可配置的时间,因为连接断开可能只是网络中临时线路改变的结果,并非真的断开电缆与网络的连接。NDIS电源管理策略的前提是没有网络活动,这意味着在切断网络适配器电源之前,所有上层网络组件必须同意该请求。如果网络上还存在活动会话或者打开的文件,断电请求就会被其中一个或所有相关组件拒绝。第7页/共31页第8页6.1 Windows的TCP/IP实现 6.1.3网络接口层2.网络设备接口规范NDIS计算机也能被网络事件从低电源级别中唤醒,以下情况会导致唤醒信号产生:检测到网络链路状态的改变(例如,电缆重新连上)。接收到网络唤醒帧。接收到巨报包(Magic Packe
9、t),巨报包是指包含连续16个接收方网络适配器介质访问(MAC)地址拷贝的报文。NDIS接口还允许不同类型的多个协议驱动程序绑定到同一个网络适配器驱动程序,也允许将同一个协议绑定到多个网络适配器驱动程序上。第8页/共31页第9页6.1 Windows的TCP/IP实现 6.1.3网络接口层3.链路层功能链路层功能分布在网络适配器/驱动程序组合和低层协议栈驱动程序中。对LAN介质,网络适配器/驱动程序组合的过滤功能基于帧的目的MAC地址,如在一般情况下,局域网中的硬件可以过滤掉接收到的目的地址不是以下地址之一的所有帧:适配器的单播MAC地址。广播地址(对以太网,广播地址是0 xFF-FF-FF-
10、FF-FF-FF)。通过协议驱动程序利用硬件注册的组播地址。如果某个帧将这些地址之一作为其目的MAC地址,就能通过计算校验和来检查该帧的比特级完整性。所有通过了目的地址校验和检查的帧,都通过硬件中断提交给网络适配器驱动程序。网络适配器驱动程序是在计算机上运行的软件。网络适配器驱动程序再通过接口卡把帧送入系统内存,然后再按组成帧时的顺序提交给特定的绑定传输驱动程序。第9页/共31页第10页6.1 Windows的TCP/IP实现 6.1.3网络接口层3.链路层功能当一个包经过一个或一系列网络时,其源MAC地址是把该包放到传输介质上的网络适配器的MAC地址,而它的目的MAC地址总是通过该传输介质欲
11、到达的网络适配器的MAC地址。这意味着在具有路由的网络中,源和目的MAC地址在经过网络层设备(路由器或第三层交换机)的每一段时会发生改变。第10页/共31页第11页6.1 Windows的TCP/IP实现 6.1.4网际层在图6-1中,从NDIS和TDI之间定义的内容为TCP/IP协议栈的核心组件,Windows中该核心组件在名为tcpip.sys的驱动程序中实现(在系统安装目录的drivers目录中),一般可以通过TDI和NDIS接口或Winsock2接口对该协议栈进行访问。另外,从图6-1中可以看出,在Windows TCP/IP协议栈中,网际层和传输层并没截然分开,为了便于理解,我们还是
12、依据TCP/IP协议栈的层次来介绍各层协议的内容,由于ARP和ICMP也包含在网际层中,所以在下面的介绍中包括ARP、IP和ICMP三个协议。1.地址解析协议在本书第3.6节中介绍过地址解析协议ARP的功能。由于一个被发送到网络中的数据包只知道IP地址是无法在一个物理网络中传输的,ARP的功能就是提供从IP地址到介质访问控制地址(MAC地址)的解析功能,以便将发送出的数据报封装成帧时,填上其源和目的MAC地址。第11页/共31页第12页6.1 Windows的TCP/IP实现 6.1.4网际层(1)ARP高速缓存及其更新过程一台主机的高速缓冲区中有ARP缓冲区,在ARP高速缓存中存放IP地址和
13、MAC地址的映射表,其中的一个表项由IP地址、与IP地址对应的MAC地址,以及表示表项动静态属性的字段组成。主机是如何使用ARP高速缓存的呢?在网络中,一个从本网络发送到其他网络的数据包,要选择适当的路由将数据包转发出去,这时ARP就要将转发数据包的路由器(也可能是其他具有路由功能的网络设备)IP地址,与本机中存放在高速缓存中的ARP缓存表进行比较(ARP高速缓存在TCP/IP协议初始化时被清空),以查找包将发往的网络适配器MAC地址,如果有匹配项,就使用从高速缓存中取得该IP对应的MAC地址。如果没有,就按照ARP的工作原理,在本地子网上广播一个ARP请求帧,要求拥有所查询IP地址者回送它的
14、MAC地址,在主机收到ARP响应时,就以新信息更新ARP高速缓存,并用它作为包的数据链路层地址。在主机更新ARP高速缓存表项时,除了通过接收ARP应答来创建ARP高速缓存表项外,也能根据从ARP请求中得到的映射信息来更新ARP表项。换句话说,如果ARP请求发送者的IP地址在高速缓存中,就用发送者的MAC地址更新表项。通过这种方法,含有发送者的静态或动态ARP高速缓存表项的结点,可以用发送者的当前MAC地址进行更新。第12页/共31页第13页6.1 Windows的TCP/IP实现 6.1.4网际层Windows能根据系统要求自动调整ARP高速缓存的大小。如果一个表项两分种内未被任何外出数据报使
15、用,就从ARP高速缓存中删除掉。被访问过的表项赋以追加时间,每次增加2分钟,直到最大生命值时间为止(即10分钟)。10分钟后,就从ARP高速缓存中删除该表项,如果要继续使用,必须通过ARP请求帧重新查找。但要注意,通过“arp s”命令添加的静态表项不会因时间期满而被删除。(2)Windows中ARP工具的使用在Windows系统中,专门提供了一个有关ARP的工具,该工具名称为arp.exe,用户可以使用该工具来查看、添加或删除ARP高速缓存中的表项。查看ARP高速缓存中表项内容的命令是:arp-a手工添加ARP表项的命令是“arp s”。例如,要将IP地址为192.168.2.12,其MAC
16、地址为00-cc-dd-ee-88-88的表项加入ARP高速缓存中,可用如下的命令:arp-s 192.168.2.12 00-cc-dd-ee-88-88第13页/共31页第14页6.1 Windows的TCP/IP实现 6.1.4网际层注意,手工添加的表项是静态的,无法根据高速缓存表项的过期而自动删除。用“arp d”命令可以删除ARP高速缓存中的表项。例如,下面删除IP地址为192.168.2.12的ARP高速缓存表项:arp d 192.168.2.122.网际协议TCP/IP协议栈中,IP层根据IP地址在网络中进行数据报的传输。每个IP数据报都含有发送者的源IP地址和预期接收者的目的
17、IP地址。与MAC地址不同,数据报中的IP地址在包经过网间传输时一般保持不变。第14页/共31页第15页6.1 Windows的TCP/IP实现 6.1.4网际层(1)路由选择路由选择是IP层的基本功能。数据报经由网络适配器提交给IP,每个数据报都有源和目的IP地址。IP模块检查每个数据报的目的地址,并与本地维持的IP路由表作比较,以决定采取如下哪种操作:如果目的IP与本地IP相同,则提交给本地主机IP层之上的高层协议进行处理。如果目的IP与路由表中某表项相同,则通过本地某一网络适配器转发。不是以上两种情况时,则丢弃数据报。第15页/共31页第16页6.1 Windows的TCP/IP实现 6
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 网络 编程 书籍 讲义
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内