资源描述:
《TCP_IP协议中IP协议的设计与实现.pdf》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、第23卷第2期佳木斯大学学报(自然科学版)Vol.23No.22005年04月JournalofJiamusiUniversity(NaturalScienceEdition)Apr.2005文章编号:1008-1402(2005)02-0204-05TCP/IP协议中IP协议的设计与实现12李兴霞,李兴家(1.佳木斯大学应用技术学院,黑龙江佳木斯154007;2.黑龙江农垦通信公司红兴隆分公司,黑龙江宝清155610)摘要:简要介绍了网络协议的基本设计方法,并利
2、用该协议设计思想,结合TCP/IP协议的基本原理,借鉴Berkeley联网程序代码,在VC软件开发环境下编程实现IP协议的基本处理功能.并且从协议设计的角度描述了IP协议模拟实现的细节,讨论了IP协议的执行效率、安全性、可靠性等方面的问题.关键词:网络互连协议;TCP/IP协议簇;计算机网络协议中图分类号:TN915.04文献标识码:A0引言当今世界,计算机网络应用已遍及几乎人类活动的一切领域,这一切网络应用实现的核心就是网络协议.网络协议是一种支撑软件,是整个计算机网络应用实现的基础.它的
3、设计要遵循一定的方法,一般可以分3大部分来考虑,即协议结构设计、协议机制设计和协议元素设计.目前网络通信协议的种类很多,TCP/IP协议是实现简单、使用范围广,是目前事实上的网络协议标准.它是一组协议簇(Internetprotocolsuite),是一组不同层次上的多个协议的组合,IP是其中最为核心的协议.本文按照网络协议的设计方法,结合TCP/IP协议基本原理,编程模拟实现IP层协议处理的基本功能.主要借鉴伯克利(Berkeley)联网程序代码,利用其mbuf结构的设计思想,屏蔽底层的实现,在Visua
4、lC++环境下,用MFC的socket类来模拟实现底层的发送接收功能;上层报文的来源直接用窗口界面来模拟实现,然后调用IP层的函数对报文进行相应的处理.1网络协议设计基础协议设计首先要从协议的分析入手,包括协议环境分析和协议功能分析.协议环境分析主要是完成对连接管理、广播与组播、服务认可方式、通信方式、数据格式和服务质量要求等方面的分析统计;协议功能分析就是明确协议应该具有的功能,如连接控制管理、数据安全性与可靠性、路由选择和流量统计等.通过对协议环境和协议功能的分析,一个特定协议应该具有哪些功能已经基本
5、明确,接下来的任务就是设计这个特定协议.协议设计主要解决如何实现协议功能,包括采用什么方法、设计多少服务原语、PDU的格式是怎样的、协议采用怎样的结构等.协议设计可以分成3大部分来考虑,即协议结构设计、协议机制设计和协议元素设计.1.1协议结构设计与设计其它软件系统一样,在设计协议时,先要设计好协议的结构,然后再设计协议的内容.协议的结[1]构可以从3个方面来考虑:分层,分阶段,分类.协议分层是指把n层协议再分成两个或多个子层,然后再分层设计.分层的原则是,与用户接口的协收稿日期:2005-01-14作
6、者简介:李兴霞(1974),女,黑龙江宝清人,佳木斯大学应用技术学院助教.第2期李兴霞,等:TCP/IP协议中IP协议的设计与实现205议实体和与下层通道接口的协议实体在功能上相互独立,而且各自的功能都比较复杂.通过划分子层,可以使复杂协议的结构变得清晰,有利于协议的设计、验证、实现和测试.协议分阶段是指把n层协议分成多个运行阶段,每个阶段只需要部分协议功能在工作.协议分阶段同样有利于协议的设计、验证、实现和测试.协议分阶段的依据是协议的运行过程具有明显的阶段性.协议分类是指当n层协议需要满足不同用户要求或
7、需要适应不同的下层通道时,把n层协议分成不同的类别,每类协议只适用于一定用户和一定通道.协议分类可以起到简化协议的作用.1.2协议机制设计设计协议机制就是设计实现协议功能的方法、策略、算法等.由于协议功能多种多样,不可能有统一的方法或算法来实现这些功能,因而协议机制的设计也不可能有统一的方法.1.3协议元素设计一般来说,协议由六种元素组成,这六种元素是:服务原语和服务原语时序;协议数据单元(PDU)和PDU交换时序;协议状态;协议事件;协议变量;协议动作和谓词.2IP协议的程序实现2.1说明基于I
8、P协议的模拟实现程序是以伯克利(Berkeley)联网程序代码为基础的,主要利用其mbuf结构的设计思想,屏蔽掉底层的实现,直接用MFC的socket类来模拟实现底层的发送接收功能;上层报文直接用[2]窗口界面来模拟实现,然后用IP层的函数对报文进行相应的处理.2.2总体框架程序的初始界面如图1所示:图1IP模拟程序初始界面模拟程序的实现过程大致分如下步骤:1)客户端和服务器端的建立如图1所示,在!连接处理∀