ip协议范例6篇

ip协议

ip协议范文1

IPSec是IETF(Internet Engineering Task Force,Internet工程任务组)的IPSec小组建立的一组IP安全协议集。IPSec定义了在网际层使用的安全服务,其功能包括数据加密、对网络单元的访问控制、数据源地址验证、数据完整性检查和防止重放攻击。IPSec(IP Security)产生于IPv6的制定之中,用于提供IP层的安全性。由于所有支持TCP/IP协议的主机进行通信时,都要经过IP层的处理,所以提供了IP层的安全性就相当于为整个网络提供了安全通信的基础。鉴于IPv4的应用仍然很广泛,所以后来在IPSec的制定中也增添了对IPv4的支持。最初的一组有关IPSec标准由IETF在1995年制定,但由于其中存在一些未解决的问题,从1997年开始IETF又开展了新一轮的IPSec的制定工作,截至1998年11月份主要协议已经基本制定完成。不过这组新的协议仍然存在一些问题,预计在不久的将来IETF又会进行下一轮IPSec的修订工作。IPSec提供了两种安全机制:认证(采用ipsec的AH)和加密(采用ipsec的ESP)。・ 认证机制使IP通信的数据接收方能够确认数据发送方的真实身份,以及数据在传输过程中是否遭篡改。・ 加密机制通过对数据进行编码来保证数据的机密性,以防数据在传输过程中被窃听。AH(Authentication Header)和ESP(Encapsulating Security Payload,封装安全负载)都可以提供认证服务,不过,AH提供的认证服务要强于ESP。IPSec主要功能为加密和认证,为了进行加密和认证,IPSec还需要有密钥的管理和交换的功能,以便为加密和认证提供所需要的密钥并对密钥的使用进行管理。以上三方面的工作分别由AH,ESP和IKE(Internet Key Exchange,Internet 密钥交换)三个协议规定。为了介绍这三个协议,需要先引人一个非常重要的术语SA(Security Association安全关联)。所谓安全关联是指安全服务与它服务的载体之间的一个“连接”。AH和ESP都需要使用SA,而IKE的主要功能就是SA的建立和维护。要实现AH和ESP,都必须提供对SA的支持。通信双方如果要用IPSec建立一条安全的传输通路,需要事先协商好将要采用的安全策略,包括使用的加密算法、密钥、密钥的生存期等。当双方协商好使用的安全策略后,我们就说双方建立了一个SA。SA就是能向其上的数据传输提供某种IPSec安全保障的一个简单连接,可以由AH或ESP提供。当给定了一个SA,就确定了IPSec要执行的处理,如加密,认证等。SA可以进行两种方式的组合,分别为传输临近和嵌套隧道。IPSec的工作原理类似于包过滤防火墙,可以看作是对包过滤防火墙的一种扩展。当接收到一个IP数据包时,包过滤防火墙使用其头部在一个规则表中进行匹配。当找到一个相匹配的规则时,包过滤防火墙就按照该规则制定的方法对接收到的IP数据包进行处理。这里的处理工作只有两种:丢弃或转发。IPSec通过查询SPD(Security Po1icy Database安全策略数据库)决定对接收到的IP数据包的处理。但是IPSec不同于包过滤防火墙的是,对IP数据包的处理方法除了丢弃,直接转发(绕过IPSec)外,还有一种,即进行IPSec处理。正是这新增添的处理方法提供了比包过滤防火墙更进一步的网络安全性。进行IPSec处理意味着对IP数据包进行加密和认证。包过滤防火墙只能控制来自或去往某个站点的IP数据包的通过,可以拒绝来自某个外部站点的IP数据包访问内部某些站点,也可以拒绝某个内部站点对某些外部网站的访问。但是包过滤防火墙不能保证自内部网络出去的数据包不被截取,也不能保证进入内部网络的数据包未经过篡改。只有在对IP数据包实施了加密和认证后,才能保证在外部网络传输的数据包的机密性、真实性、完整性,通过Internet进行安全的通信才成为可能。IPSec既可以只对IP数据包进行加密,或只进行认证,也可以同时实施二者。但无论是进行加密还是进行认证,IPSec都有两种工作模式,一种是隧道模式,另一种是传输模式。

ip协议范文2

关键词:TCP/IP协议;Internet;网络通信

1 前言

TCP/IP初步架构的出现源于1964年,冷战时期美国国防部高级研究计划局DARPA提出ARPANET研究计划,目的是希望美国国防部的很多主机、通信控制处理机和通信线路在战争中,如部分遭到攻击而损坏时,其它部分还能正常工作,同时它希望适应从文件传送到实时数据传输的各种应用需求,因此它要求的是一种灵活的网络体系结构,实现异型网的互联(Interconection)与互通(Intercomunication)。

最初ARPANET使用的是租用线路。当卫星通信系统与通信网发展起来之后,ARPANET最初开发的网络协议NCP (Net Control Protocol,网络控制协议)因其在通信可靠性较差的通信子网中出现了不少问题,导致了新的网络协议TCP/IP的出现。虽然TCP协议和IP协议都不是OSI标准,但它们是目前最流行的商业化的协议,并被公认为当前的工业标准或“事实上的标准”。1974年,Kahn最早定义出了的TCP/IP参考模型(TCP/IP Reference Model ); 1985年由Leiner等人对该模型做了进一步的研究;1988年Clark对该模型的设计思想进行了讨论。

今天,Internet己经发展得更加商业化,更加面向消费者,尽管基本目的发生了改变,但其最初的质量标准(也就是开放式、抗毁性和可靠性)依然是必需的。这些特性包括可靠传输数据、自动检测、避免网络发生错误等。更重要的就是TCP/IP是一个开放式的通信协议,开放性就意味着在任何组合间,不管这些设备的物理特征有多大差异,都可以进行通信。

2 标准TCP/IP协议

如同OSI参考模型一样,TCP/IP也是一种分层模型。与OSI参考模型不同的是,TCP/IP参考模型更侧重于互联设备间的数据传送,而不是严格的功能层次划分。TCP/IP通过解释功能层次分布的重要性来做到这一点,但它仍为设计者具体实现协议留下很大的余地。因此,OSI参考模型适用于解释互联网络的通信机制,而TCP/IP更适合做互联网络协议的市场标准。

TCP/IP协议是一套把因特网上的各种系统互联起来的协议组,可以保证因特网上数据准确又快速地传输。TCP/IP协议是一个很大的协议族,通常表示为一个简化的四层模型。这四层分别是应用层、传输层、网络层和链路层。其中一些常用协议在TCP/IP分层模型中所处的位置如图1所示。

图1TCP/IP层次结构图

3IP协议的实现

3.1 IP数据报格式

IP ( Internet Protocol,互联网协议)是TCP/IP协议中一个最重要的协议。IP数据报以32比特为一个计数单位(组),其格式如图2所示。

图21P数据报格式

3.2IP协议的软件实现

IP是TCP/IP协议中最为核心的协议。所有的数据都以IP数据报格式传输。IP协议可以实现无连接数据报传送、数据报路由选择和差错控制的功能。在本课题中,由于单片机资源有限,结合实际需要只实现了IP数据报传送和接收,没有实现路由选择算法和差错控制,同时也不支持IP数据报的分片和重组。

IP协议主要通过IP接收函数和IP发送函数两个函数实现。

①IP发送函数

void ip_send对来自上层的数据,按照IP数据报的结构构造数据报。通过调用ARP处理程序解析对应IP的物理地址。若返回NULL值,则将数据存入一个已定义的结构体WAITE中,并发送ARP请求。若返回对应IP的物理地址,则将数据交给底层以太网驱动程序处理。

②IP接收函数

void ip rcve (UCHAR xdata*inbuf)单片机收到数据包之后,应先对数据包的类型进行判断。如果是IP数据报,则调用该程序。接着再判断其数据域中所使用的协议类型,是ICMP协议调用ICMP处理子程序,是UDP协议调用UDP处理子程序,是TCP协议调用TCP处理子程序,其它返回。程序流程图如图3所示:

图3IP接收过程流程图

3.3 校验和算法

在大多数TCP/IP协议中采用的差错检验方法是校验和,校验和是在分组上附加的信息。校验和能够防止分组在传输时所受到的损伤。在发送端先计算检验和并将得到的结果与分组一起发送过去。接收端对包括校验和的整个分组重复进行同样的计算。若得到的结果正确则接收此分组,否则就将其丢弃。发送端和接收端的校验和计算方法分别如下:

①发送端按以下步骤产生校验和

②接收端按以下步骤产生校验和

下面给出校验和算法的源程序:

UINT Checksum (UCHAR xdata *checks UINT length)//计算校验和

{LONG sum=0; UINT i:UINT xdata *ptr: ptr=(UINT xdata *)check;

for (i=0:i

{sum+=*ptr++;}

if (length&0x01)//表示长度为单数

{sum=sum+((*ptr)&Oxff00);}

sum=(sum&Oxffff)+((sum;16)&Oxffff);//高16位和低16位相加

if(sum&OxffffU000){sum++;}//表示有进位

return((UINT)((sum)&Oxf});}

4TCP协议的实现

4.1 TCP数据报格式

TCP(Transfer Control Protocol,传输控制协议)是传输层最常用的协议,是一个比较复杂的协议。TCP和IP一样,也是TCP/IP协议族中最重要的协议。它可以提供面向连接的、可靠的数据传输服务。TCP数据报文段格式如图4所示:

图4TCP报文段的格式

4.2 TCP协议的实现

TCP协议的实现是整个TCP/IP协议栈中最复杂的一个。TCP协议是面向连接的、端对端的可靠通信协议。TCP采取了很多机制来保证它的可靠性,比如TCP连接的建立与关闭机制、超时重传机制、数据包确认机制、流量控制机制等等。在嵌入式系统中实现TCP协议所要做的就是实现这些机制,当然要在不影响协议栈功能的前提下适当做一下简化。

4.3TCP的超时重传与流量控制机制的实现

当一个TCP连接顺利建立起来后,TCP连接的双方可以互相传递数据了。TCP的可靠传输是靠确认机制来实现的,也就是每发送一个数据包后,只有接收到对方发送确认包后,才能确定该数据包已经成功发送,否则就要重发。

TCP的流量控制是为了协调通信双方的收发速率不均衡而设计的。远端的客户机一般是通用计算机,相对与本地的嵌入式Web Server来说运行速度要快得多。因此,当远端快的发送方向本地慢的接收方发送数据的时候,如果发送速度很快,则会导致本端来不及处理,甚至导致死机。TCP连接建立时,双方会利用TCP首部中的Window窗口字段通报双方的可用窗口。实际上,接收方通报的窗口大小是根据其接收缓存的大小而定,考虑到本系统在使用TCP协议时,只设置了一个中等IP包大小接收缓存,因此接收窗口设为1024。同时,每次接收包的ACK确认时,窗口大小不再动态改变,恒定设置为1024。这样远端主机就会以较慢的传输速率与本端的Web Server进行通信。

5 结论

本文主要针对目前流行的TCP/IP网络通信协议的实现进行研究和探索,由于时间仓促,加上本人对该领域的研究才刚刚起步,所以还存在一些问题值得进一步研究探讨,主要有:

(1) 对于TCP/IP协议,时间的控制非常重要。包括TCP的超时重传,TCP状态的保活等。如果时间处理不当,将影响整个系统的通讯性能。

(2)如何进一步实现TCP/IP对于多点通信以及完整协议栈的实现还有待于进一步研究。

(3) IPv6作为下一代互联网的核心协议,能够提供几乎无限的地址空间,从根本上克服了IPv4中地址空间不足的问题。因此,下一步可增加对IPv6协议的研究与实现。

参考文献

[1] 胡海.嵌入式TCP/IP协议栈研究与实现[D].西南交通大学,2005.8.

[2] 袁晓莉,徐爱均.基于OS-II和TCP/IP的远程温度监测系统.2005.5.

[3] 吴艳光.嵌入式TCP/IP协议栈设计方法的研究 [D].太原理工大学,2004.

[4] 马永力. 基于SX52BD的嵌入式Web服务器的设计与实现.山东大学,2005.

[5]路英娟.TCP/IP协议小议[J].科技情报开发与经济,2004(6).

[6]葛志辉,李陶深.TCP/IP协议的脆弱性与相应的对策.2004.

---------

ip协议范文3

随着科学技术的不断进步,社会经济的不断发展,人们生活水平的逐渐提高,互联网已深入融入进人们的日常生活中,电子信息技术也是维持人们正常生活运作的重要技术支持,当下已进入一个网络信息化的大数据时代。互联网带给人们生活便利的同时也伴随着一定的信息泄露等安全风险,当下人们的隐私被侵犯的现象越来越多,为了捍卫人们基本权利,营造一个安全稳定的网络环境。本文就基于TCP/IP协议的几个网络安全问题进行探讨与分析。

【关键词】TCP/IP协议 网络安全 分析

1 TCP/IP协议概述

TCP/IP协议是指一个允许不同软硬件结构计算机进行通信的协议族,是能将各个不同结构计算机连接起来的主要技术平台,也是实现计算机资源共享的技术支持。其中我们常说的Internet互联网就是建立在协议之上的计算机信息技术,TCP/IP协议主要有包括四个层次,第一层是应用层,是实现使用者去访问、去具体使用的平台,比如说常用的后缀网址等,第二层是传输层,是将用户使用平台与计算机信息网内部数据结合的通道,实现数据的传输与共享,有TCP、FTP等,第三层就是网络层,是负责网络中的数据包传送,并提供链接导向以及相关的数据报服务等。最后一层是网络访问层,是网络的接口层,也称数据链路层,能处理不同通信媒介的相关信息细节问题,比如说常见的以太网、ARP等。在基于TCP/IP协议上互联网的信息传输范围变得更广泛,且传输的内容来源更多,对传输对象以及输送对象的信息安全要求降低,且多个端口使得数据信息被处理的步骤较多,不能对其保密性起到保障作用,TCP是使用一种介乎集中与动态分配之间的端口分配,端口也被分为保密与自由端口,这在一定程度上又大大增加了网络信息安全风险。下面就几个网络安全的主要问题进行分析。

2 基于TCP/IP协议的网络安全问题分析

2.1 在TCP/IP协议的应用层中

首先在TCP/IP协议的应用层中,可能会产生的网络安全问题有在PTP网络上接口中接收到原本不属于主机的数据,通常应用层设计都是在采用的是共享端口,由于具体的一个类型端口设计所要耗费的资金成本较高,因此在这种接收数据共享的平台上很容易收到并不属于平台应用的相关收据,由此引进一些木马病毒,导致里面的数据泄露,引发网络安全问题。针对此,我们可以在应用平台上设立专门的加密文件,对于特殊信息内容可以设置一定的口令才能允许接受与传输,以防对所有信息的全接受,降低恶意信息攻击的风险。另外,还能对网络进行分段处理,在应用平台上多设置几个消息查找的信息渠道,一层一层筛选掉不符合安全性能的信息,以及不具备可靠来源的信息,从而减少网络信息安全问题产生。

2.2 在TCP/IP协议中的传输层上

其次在TCP/IP协议中的传输层上也有存在网络安全问题的风险,比如说在ICMP传输通道上,ICMP是IP层的一个部分,是在软件与机器间传输与控制信息的无连接协议。在计算机IP软件中任何一个端口给ICMP发送一个PING文件,用以申请是否能够允许文件传输,ICMP都会做出一个相应的回答给源主机,此命令可以检测消息是否达到目的主机上。基本上传输层对所有申请传输的数据都会给予同意,原因主要PING软件编程不能智能识别出恶意信息,也都普遍存在于ICP/IP网络以及以太网中,一般防火墙和网络安全防护体系都自动默认PING的存在,而忽视了其可能会存在的安全风险性。

2.3 在ICP/IP协议中的网络层上

然后在ICP/IP协议中的网络层上也有产生网络安全问题的风险,主要表现是IP欺骗,由于ICP/IP协议的信任机制十分简单且方便,因此很多IP欺骗都利用了这一特点,用虚假信息来冒充重要数据信息。很多身份确认都只是通过机主的IP地址来进行,这里只要篡改一下IP地址就可攻击主机侵入数据管理中心内。针对此我们可在IP地址识别中多设立几道关卡,在十分确定IP正确性后方可给予通行,另外还要加强网络防火墙的防护功能,保障网络信息安全。

2.4 在TCP/IP协议上的网络层ARP欺骗

最后,在TCP/IP协议上的网络安全问题还有在网络层中的ARP欺骗。在IP数据包发送至主机过程中会有一个或多个子网的主机利用网关卡来作为第一个驿站,而ARP作为源主机的第一个查询工具,在查找不到IP地址对应的物理地址时就会向主机发送一个包含了主机与IP地址的相关物理地址信息,同时源主机还会向目的主机发送包含自身IP地址与ARP检测的回答。若在ARP识别环节中出错,那么可疑的信息申请会直接进入到目标主机中,像一类携带有病毒的恶意攻击若采用ARP欺骗则会造成网络信息安全泄露。针对此,在ARP识别环节中要加强其防护功能,多设立几道识别关卡,不能只依照IP名来作为识别的主要依据,还要参考IP的相关性质等。

3 总结

综上所述,在基于TCP/IP协议的几个网络安全问题分析与讨论中,我们了解到了分别在应用层、传输层、网络层、网络传输层等几个方面可能会存在的网络安全风险。造成风险的主要原因有因协议的信任机制设计较简单,在对信息来源的检验与审查做的不够到位,使得很多恶意信息内容钻了空子,造成很多软件欺骗。因此,在针对这些问题中我们需要在网络信息传输渠道以及信息识别单位还有信息数据存储等环节内加大安全防护,提高对欺诈信息的警惕性,设立多出防护环节,避免信息之间传输的无障碍性,今后,我们还将继续深入探究网络安全信息防护的相关结构功能,用以提出更加科学有效的解决措施,增强我国网络信息安全性以及推进我国网络信息行业发展做努力。

参考文献

[1]杨春,周明天.SOCKS协议在防火墙中的应用研究[J].电子科技大学学报,1999(02).

[2]董张卓,唐明,周鸿.基于ARP报文的调度主站系统链路状态探测[J].电力系统自动化;2006(15).

[3]宋志.基于PVLAN技术的防ARP欺骗技术探讨[J];电脑知识与技术(学术交流),2007(14).

[4]捂鳎文静华.校园网内ARP欺骗攻击及防范[J].福建电脑,2007(05).

[5]蓝玉龙.TCP/IP协议及其工作原理[J].广西民族学院学报(自然科学版),2000(02).

作者简介

李江晖(1984-),男,广东省廉江市人。硕士学历。现为75240部队助理工程师。

ip协议范文4

随着IPv6技术的成熟和市场的发展,网络的全IP化是未来通信网络发展的必然趋势,传统电路交换网和互联网也正在正经相融合,电信网的核心部分将演化成为单一的分组网络。作为下一代网络(NGN)控制核心的软交换,结合了传统电话网络可靠性和IP技术的灵活性、有效性等优点,是传统的电路交换网向分组化网络过渡的重要网络概念。软交换的核心思路就是通过业务与呼叫控制分离能主呼叫控制与承载分离实现相对独立的业务体系,使业务真正于网络,灵活有效地实现业务的提供。因此将传统的网关分解为媒体网关控制器MGC(Media Gateway Controller)和媒体网关MG(Media Gateway),这种结构的最大好处在于业务和网络规模具有良好的可扩展性。

媒体网关可以划分为中继媒体网关、ATM中继媒体网关和综合业务媒体网关等类型,主要用于终结电路交换网的媒体流以及负责各种用户或接入网的综合接入。媒体网关控制器则对与媒体网关中的媒体通道的连接控制相关的呼叫状态部分进行控制。目前,媒体网关控制器与媒体网关之间通过H.248/Megaco协议进行通信。媒体网关控制器可以通过它实现对媒体网关的控制,媒体网关也可以通过向媒体网关控制报告用户端的事件,从而实现正常的通信。

1 软交换的体系结构及H.248/Megaco协议

软交换设备(Soft Switch)也称为呼叫服务器(Call Server)或者媒体网关控制器MGC,它是NGN的控制功能实体,为NGN提供具有实时性要求的业务呼叫控制和连接控制功能,是呼叫与控制的核心。MGC的功能主要包括呼叫控制功能、业务提供功能、业务交换功能、资源管理功能、互联互通功能、SIP功能、媒全网关接入功能等。软交换网络从功能上可以分为应用层、控制层、传输层和接入层,如图1所示。

应用层利用底层的各种网络资源为用户提供丰富多样的网络业务。主要包括应用服务器AS(Application Server)、AAA服务器(Authority Authentication and Accounting Server)、策略服务器PS(Policy Server)和智能网SCP等。其中最主要的功能实体是应用服务器,它是软件交换网络体系中业务的执行环境。

控制层主要提供呼叫控制、连接控制、协议处理等能力,并为业务层提供访问层各种网络资源的开放接口。该层的主要组成部分是MGC。

传输层负责提供各种信令和媒体流传输的通道,网络的核心传输网将是IP分组网络。

接入层提供各种网络和设备接入到核心骨干网的方式和手段,主要包括信令网关、媒体网关、接入网关等多种接入设备。

在通信系统中,控制是通过协商解决的,相应地就必须有协议。在NGN体系结构中,软交换作为控制中心,正是通过支持H.248/Megaco、SIP、SIGTRAN、BICC、H.323等多种协议实现的。

软交换设备之间采用SIP(Session Initiation Protocol)协议或者BICC(Bearer Independent Call Control)协议,软交换设备与信令网关之间采用信令传送协议SIGTRAN(Signaling Transport)在IP网络中传递电路交换信令。在软交换设备与媒体网关、H.248终端以及接入网关之间则采用H.248/Megaco协议。

H.248/Megaco协议是2000年由ITU-T第16工作组提出的媒体网关控制协议,它是在早期的MGCP协议(RFC2705)基础上结合其它媒体网关控制协议特点发展而成的种协议。它提供控制媒体的建立、修改和释放机制,同时也可携带某些随路呼叫信令,支持传统网络终端的呼叫,解决了H.323的复杂、伸缩性差着问题,是下一代网络关键的媒体网关控制协议。

H.248/Megaco的另一个特点是消息格式既可以采用文本格式,也可以采用ASN.1的二进制编码格式。在对媒体流进行描述时,如果消息格式是文本格式,则采用SDP描述媒体流。如果消息格式是二进制编码格式,则使用协议规定的编码。因此在协议实现时,若要求各厂商设备互通,就需要实现两种编码方式。这一特点是IETF和ITU-T合作的结果。H.248/Megaco协议中的主要概念有终结点、关联和包:

(1)终结点(Termination)是媒体网关上的一个逻辑实体,能够发送和接收一种或多种媒体,如模拟用户接入网关中的电话线、中继网关中的中继电路,一个终端在任一时刻属于且只能属于一个关联。

(2)关联(Context)是一些终端之间的联系,描述了终端间拓扑关系和媒体混合/交换的参数,表示一组终结点之间的连接关系。在一个关联中可以存在若干个终结点,其数目完全由媒体网关的特性决定。空关联表示所有与其它终点没有联系的终结点。

(3)包(Package)通过允许终结点具有可选的特性、事件、信号和数据,媒体网关控制协议实现了对具有不同特点的终结点的支持。同时,为了实现媒体网关与媒体网关控制器的互操作,这些可选项可以被组合成包。

H.248/Megaco协议建立了多种传输机制,保证了协议消息在媒体网关和媒体网关控制器之间的可靠传输。

2 TCP/UDP协议的区别及运用场合

H.248/Megaco定义的各种协议消息既可以在TCP上传输,也可以在UDP上传输,TCP和UDP之间的主要区别是可靠性和复杂度。

TCP协议可以提供端到端可靠的数据传输。TCP协议采用了多项提高可靠性的技术以克服底层IP网络传输的不可靠性,它并不区分结构化的数据流,只支持数据流的传输。应用程序必须在连接之前了解数据流的内容,并对其格式进行协商,对数据流的进一步处理完全留给应用程序本身来完成。TCP也允许用户指定连接的安全性和优先级,这两个功能并非是现在所有的TCP产品中都有,但在TCP标准中作了定义。TCP协议还提供了全双工联接、向应用进程提供PUSH功能和流量控制。

UDP协议面向应用程序提供数据传输服务,并且支持组播。与IP层相比,IP层只负责互联网上的一对主机之间的数据传输,实现主机间的通信;而UDP层通过端口机制标识同一主机上运行的多个进程,完成进程间通信。与TCP协议相比,它们同属于传输层,都是完成面向进程的数据传输服务。不同之处在于,TCP协议提供的是面向连接的、可靠的数据传输服务,而UDP提供的是面向无连接的、不可靠的数据传输服务。

所以,对广播或多播应用程序必须使用UDP。此时任何期望的错误控制必须加入到应用程序中。UDP也可以用于较简单的请求一应答式应用程序,但是应用程序内部必须有检查错误的功能,至少涉及确认、超时和重传。UDP不适用大量数据的传输,因为大量数据的传输要求将窗口式流控、拥塞避免和慢启动等特性在应用程序中

实现,这也意味着要在应用程序中重建TCP。利用UDP传输H.248/Megaco消息时,如果对等实体没有提供相应的通信端口,各种指令应当被送到默认端口上:对于文本编码的操作,端口号应当使用2944;对于二进制编码操作;则端口号应当使用2945。在UDP上传输消息可能会发生丢失,如果没有及时响应的话,命令就会重复,从而导致MG状态的不可预料性,所以,传输进程必须能够提供一种“At-Most-Once”功能,以防止命令的重复执行。

利用TCP传输H.248/Megaco消息时,如果对方没有提供端口的话,各种指令应当被送到默认端口上。TCP是一个基于流的协议,使用TPKT来描述TCP流中的各种消息。在面向事务的协议中,事务请求与响应消息仍然有可能由于这样那样的原因而丢失。因此,建议各种实体使用TCP传输机制作为每一次请求和响应过程实现应用层的定时器,这一点与对UDP上应用层帧结构的描述是类似的。

虽然在TCP上传输的水洗步会发生传输丢失,但是事务请求或其响应消息的丢失在实际实现中仍然有可能发生。如果没有及时响应的话,指令就会重复。大多数指令的操作要求是不一样的。因此,MG的状态是无法预料的,所以,在使用TCP时也应该提供“At-Most-Once”功能。

另外,在协议中还加入了三次握手机制和计算重传机制来进一步提高协议的可靠性。

3 协议传输安全与加密

由于IP网络是一个开放的网络,极易受到非法攻击。为了防止未经授权的实体利用媒体网关控制协议建立非法呼叫,或者干涉合法呼叫,应当建立一整套严密的安全机制,对此协议的传输进行保护。目前提出了两种方案来解决在IP网络上传输H.248/Megaco协议的安全问题:一种是采用IPsec对协议传输进行安全保护;另一种是采用过渡性AH方案。

利用Ipsec对H.248/Megaco消息的传输主要包括封装安全载荷协议ESP(Encapsulating Security Payload)、网络认证协议AH(Authentication Header)和密钥管理协议IKE(Internet Key Exchange)三部分。它规定了如何在对等层之间选择完全协议、确定安全算法和密钥交换,向上提供了访问控制、数据源认证、数据加密等网络安全服务。

封装安全载荷协议ESP对媒体网关/终端设备和软交换设备之间传送的消息提供加密,为IP数据包提供完整性检查、认证和加密,在MGC向MG传送会话密钥SK(Session Key)时用于加密包含密钥的会话描述信息。

网络认证协议AH对在媒体网关/终端设备和软交换设备之间传送的消息提供数据源认证、无连接完整性保护和可选的抗重发保护。此协议还提供了数据完整性和反重插保证,能保证通信免受篡改,但不能防止窃听,用于保护媒体网关控制器MGC和媒体网关之间的协议连接。

密钥管理协议IKE提供媒体网关/终端设备和软交换设备之间进行密钥协商的机制,以保证密钥的安全性。

如果底层协议不支持IPsec,则应建议采用过渡性AH方案。由于IPSec要求AH头或ESP头紧跟在IP包头后面,这在应用层上的实现有一定难度,所以H.248/Megaco定义了一种折衷的AH头,调整了数据完整性检查的范围,作为在底层操作系统或传输网络不支持IPSec时的一种临时解决方案。过渡性AH方案是在H.248/Megaco协议头中定义可选的AH头来实现对协议连接的保护,过渡性AH方案只能提供一定程序的保护,例如该方案不能提供防窃听保护。同时,为了保护在媒体网关之间传输的媒体流免受由非法实体发起恶意攻击,媒体网关控制器也可以通过媒体网关控制协议向媒体网关提供会话密钥,用来对音频消息进行加密。

ip协议范文5

1HDLC的帧结构

首先回顾一下HDLC基本的帧结构形式。HDLC是面向比特的链路控制规程,其链路监控功能通过一定的比特组合所表示的命令和响应来实现,这些监控比特和信息比特一起以帧的形式传送。每帧的起始和结束以"7E"(01111110)做标志,两个"7E"之间为数据段(包括地址数据、控制数据、信息数据)和帧校验序列。帧校验采用CRC算法,对除了插入的"零"以外的所有数据进行校验。为了避免将数据中的"7E"误为标志,在发送端和接收端要相应地对数据流和帧校验序列进行"插零"及"删零"操作。

2原理框图

基于FPGA的HDLC协议的实现原理框图如图1所示。该框图包括3个部分:对外接口部分、HDLC发送部分、HDLC接收部分。以下对3个部分的实现分别进行论述。

2.1对外接口模块对外接口部分主要实现HDLC对外的数据交换。包括CPU接口、发送FIFO、发送接口、接收FIFO以及接收接口。本设计是以总线的形式实现HDLC与外部CPU的通信。当需要发送数据时,外部CPU通过总线将待发数据写入FIFO(FIFO的IP核在各开发软件中都是免费提供的,在程序中只需直接调用即可,故在此不再详细描述)。之中。发送数据准备就绪标志(TX_DAT_OK);接收数据时,当对外接口模块接收到数据有效信号时,根据接收模块发来的写信号(WR_MEM)将数据写入接收FIFO中。接收完一帧数时向CPU发送中断信号(INT),通知CPU读取数据。

2.2HDLC发送模块HDLC发送部分主要实现HDLC发送功能。当接收到数据准备就绪标志(TX_DAT_OK)后,向对外接口模块发送读使能(RD_MEM_EN)和读信号(RD_MEM),通过局部总线将待发数据存入发送缓冲区,在T_CLK的控制下将数据从HDLC_TXD管脚发出。数据发送模块采用状态机来完成发送各个阶段的切换。状态切换流程图如图2所示。State0状态是发送的起始状态也是空闲状态。当没有数据要发送时(TX_DAT_OK=0),程序以7E填充发送;当程序检测到有新数据时(TX_DAT_OK=1),程序检测7E是否发送结束如果没结束则继续发送7E,如果7E发送结束则状态在下一周期切换为State1。State1状态主要完成接收并发送数据功能,在第二个CLK周期先将读使能和读信号拉高,在第三个CLK周期再将其拉低,在第五个CLK周期开始读数。在并行的数据发送PROCESS中根据CLK周期和发送计数器,将接收到的数据通过移位进行发送同时对连续‘1’的个数和发送个数进行计数。当连续‘1’的个数为5时在下一个周期插入发送‘0’,将连续‘1’的计数器清零,发送个数不变。在发送数据的同时进行CRC校验的计算。帧校验序列字段使用CRC-16,对两个标志字段之间的整个帧的内容进行校验。CRC的生成多项式为X16+X12+X5+1,对在校错范围内的错码进行校验。标志位和按透明规则插入的所有‘0’不在校验的范围内。程序设计中的CRC校验算法的原理框图如图3所示。State3状态主要完成发送字尾,发送完成后直接转入state0。

2.3HDLC接收模块接收模块接收到一个非“7E”字节时,即判定为地址数据,直到再次接收到“7E”即判定为接收到了一个完整的一帧数。当接收到一个非“7E”数据后就通过内部数据总线(DAT_OUT_BUS)传送给接口模块,接口模块根据FRAME_LENGTH和DAT_VALIDITY来判断数据帧的长度和有效性。接收数据个阶段的状态切换流程如图4所示。在State0状态程序判断接收到的数据是否为7E,如果为7E,则表明已收到了帧头,状态切换到State1。在State1状态程序接收到的下一个数不是7E则表明收到了地址数据,将状态机切换到State2。在State2状态判断是否收到字尾,如果不是字尾则将接收的数据存入接收缓冲区同时启动写数据,将接收到的数据通过总线写入接收fifo。在收数的过程中同时进行删除‘0’的操作,即当收到连续5个1时将下一个‘0’主动删除。当收到字尾时对地址数据、控制数据和信息数据

3仿真与应用

的CRC校验结果与最后两个字节进行比对形成数据有效标志(DAT_VALIDITY)。根据上述设计,在QuartusII9.0上对发送数据和接收数据进行了仿真如图5、6所示。从仿真波形可以看出发送模块能够将FIFO中的数按照设计的波形输出到HTXD管脚;接收模块能够正确的将HRXD管脚的波形数据解出来并存入接收缓冲区中,接收完成后给接口模块发出END标志。根据上述设计方法,已成功地在可编程逻辑芯片上实现。FPGA芯片选用的是Altera公司的Cyclone系列FPGA:EP1C6T144。

4结束语

ip协议范文6

关键词:移动自组网; 无线节点; IP地址; 自动分配算法

中图分类号:TN915 文献标识码:A

1 IP地址自动分配技术简介

移动自组网中节点的IP地址自动分配技术就是在分布式运行的网络中,新加入的节点通过向网络中已经存在的节点申请自己的IP地址,或通过自身所获取的网络IP地址信息并进行相关的运算,得出自己可用的IP地址,进而为自己进行IP地址配置的协议。通过以上描述得出,移动自组网中节点的IP地址自动配置需要通过节点自身已有的信息和网络中其他节点已有的信息相互协助共同完成。由于移动自组网中节点能够随机移动,并且该网络不存在集中的地址管理节点,因此网络中新加入的节点正在寻求一种方式来自动完成IP地址的配置。移动自组网的IP地址自动分配是在某些已存在节点的协同作用下共同完成的,并不是仅仅依赖于网络中固定的IP地址管理节点。

2 移动自组网中IP地址自动配置协议的特点

由移动自组网中节点IP地址自动配置的含义可知,移动自组网中节点的IP地址自动配置协议具有如下特点:

(1)自组织。由于移动自组网是一种节点经常变化、无中心节点的无线网络,移动自组网中IP地址自动配置协议能够在这种网络环境中完成每个节点的IP地址自动配置过程。

(2)分布式。由于移动自组网是一种分布式的网络,网络中节点的IP地址自动配置协议是网络中一个或几个节点共同参与完成的,网络中的每一个节点都有可能是节点IP地址自动配置协议中的一部分。

(3)自愈性。当网络中可用IP地址耗尽,移动自组网中IP地址自动配置协议能够获得新的可用地址,从而使IP地址自动配置过程不会因为lP资源的耗尽而终止。

(4)抗毁性。因为某些原因导致网络中的某些节点无法进行通信时,新加入网络的节点也能完成IP地址自动配置过程。

3 几种典型的移动自组网IP地址自动配置协议

(1)基于硬件地址的IP地址分配

基于硬件地址的IP地址分配协议是采用基于硬件MAC地址的已知网络前缀和后缀组成的IP地址。此协议认为每块以太网卡的硬件地址具有唯一性,所以网络中节点的IP地址不能产生重复。但是该协议应该注意以下情况:①移动自组网中节点的硬件地址有可能不是采用标准的以太网MAC地址,而是使用其它格式的硬件地址;②无法保证MAC地址的唯一性,因为通过ifconfig命令或重编EEPROM可以改变网卡的MAC地址;③相同生产厂家制造的多块网卡的MAC地址有可能相同;④由于IP地址中隐含着硬件地址,所以通过节点的IP地址就能推出节点的MAC地址,这就使节点的安全性受到威胁。因此,采用基于硬件地址为节点自动配置IP地址的方法存在不足之处。

(2)预知地址分配法

基于预知地址分配法的IP地址分配协议的原理是,首先网络中的第一个节点选择一个能够产生随机数的函数f(n),由此函数产生的随机数作为节点的IP地址,函数f(n)需要很长的时间间隔才能产生两个相同的随机数。当网络中有新节点加入时,该节点便向网络中已存在节点申请IP地址,网络中已存在的节点便通过函数f(n)生成一个随机的IP地址,然后将该IP地址回复给网络中新加入的节点,下一个新加入节点的IP地址自动配置以此类推。此方法中函数f(n)能够产生的IP地址数量远远大于网络中的节点数。虽然函数f(n)需要较长的间隔时间才能生成两个相同IP地址,但是伴随移动自组网中节点的随机移动、节点间位置关系的不断变化,最终有可能导致不同节点间的IP地址冲突。

(3)MANETconf协议

在MANETconf协议中,移动自组网中的所有节点都保存着两张表:可分配IP地址表和已分配IP地址表,节点间周期性的通过广播的形式使新这两张表中的信息达到同步。网络初始化时仅存在一个节点,该节点便从可分配IP地址表中选取一个IP地址完成自身地址的配置。以后网络中新加入的节点通过网络中已存在的邻居节点来为自身配置IP地址,邻居节点选择1个未分配的地址(该地址存在于可分配IP地址表中但不在已分配IP地址表中),随后向整个网络内的其他节点广播一种特定的消息,来请求所有节点的同意,在网络中所有的节点都认为该IP地址没有被使用的前提下,邻居节点回复该IP地址给新加入的节点,同时,同步所有节点的已分配IP地址表。否则,它将重新选取地址并进行上述过程。

该协议采用广播的方式对网络中所有节点的IP地址表信息进行更新,有效避免了IP地址冲突,但是具有很大开销;当网络中加入新节点时,选择的邻居节点需要在征求网络中其它节点的同意后,才能给新加入节点分配预选好的地址,具有较大的配置延时;此外,随着网络规模的扩大,此协议的时延和开销明显增加,该算法不具有很好的扩展性。

(4)PMWRS算法

由Perkins,Malinen,Wakikawa,RoyerandSun等人研究的一个为移动自组网节点自动配置IP地址的方法,简称其为PMWRS算法。该算法的原理是,网络中新加入的节点在IP地址池169.254/16中随机选取一个IP地址,然后在网络中泛洪达到该地址的请求报文,并启动计时器。如果在计时器超时后,新加入节点没有收到任何节点的地址回复报文,该节点重新发送地址请求报文。如果节点进行几次尝试后,还是没有收到地址回复报文,该节点就认为它所选的IP地址没有被其它节点使用,并为自己配置该IP地址。但是PMWRS算法也存在着缺陷。

使用PMWRS算法的节点在泛洪地址请求报文后,如果在一定的时间内没有收到相应的应答报文,节点就以为它所选的IP地址没有被其它节点使用。但是选取计时器超时时间是一个难题。计时器超时时间太短则地址请求报文不能够被网络中的所有节点接收到。为了解决这个问题,计时器的超时时间应与移动自组网中的总节点数成正比。这样,大型的移动自组网中节点的IP地址自动配置延时将会很长。

(5)PACMAN算法

PACMAN算法中节点采用了PDAD的方式以避免进行DAD(主动冲突检测)所导致的大量开销。新加入到网络中的节点从地址空间中为自己选取1个IP地址。该算法通过分析节点进行路由更新时的数据信息,寻找存在地址重复时才可能发生的事件来发现地址冲突,并采取相应措施进行处冲突理。例如在典型的链路状态路由协议中,每个节点都需要周期性地交换含有序列号、源地址等信息链路状态消息。假如链路状态消息中每个节点序列号的变化都是有规律的,当某个节点收到的某条链路状态消息中具有与自己的IP地址相同的源地址,消息中的序列号大于自己当前的序列号,则该节点确定网络中发生地址冲突。

在地址分配过程中不产生控制信息是该算法的最大特点,该算法通过特有的路由事件来判断地址冲突,并采取相应的措施处理地址冲突,具有较小的协议开销。但该算法需要的IP地址数远远大于网络中存在的节点数,否则容易导致地址冲突,引入冲突处理算法会增大协议的开销。此外,该算法的实现针对具体的路由协议,适应范围过于狭窄。

(6)Ipv6Stateless协议

这类算法的共同特点是对整个网络先进行分群,一个群中的所有节点相距小于或等于r跳,根据节点邻居数目的多少来选举群首节点,孤立节点自立为群首。所有群内节点属于同一个子网,群首节点随机选择一个子网ID,为了保证该子网ID的唯一性,该群首节点在所有群首节点中进行DAD(主动冲突检测)。群首节点在确定下子网ID后,便向群内所有节点周期性地广播子网ID。新加入到网络中的节点首先选择一个临时IP地址,并以该IP地址在群内所有节点间进行主动检测冲突,如果发生地址冲突,则节点重新选择临时地址,并进行主动检测冲突,如果没有发生地址冲突,则将该临时地址和群首广播的子网ID合并为节点的IP地址。

该算法使整个网络实现了分群,将子网ID的DAD检测限制在群首节点之间,而临时地址的DAD检测限制在群内,降低了协议开销。但随着网络拓扑动态变化,节点的移动,维护网络分群结构的本身也需要很大的开销,所以该算法并不适合于网络拓扑变化剧烈、节点移动快的移动自组网。

结语

本文主要针对论文研究的主要内容,详细阐述了移动自组网IP地址自动配置的定义,IP地址自动配置协议的特点,为后面章节中提出的改进算法做理论铺垫。然后重点介绍了几类IP地址自动分配协议,并针对每一类IP地址自动分配协议列举了典型的、具有代表性的IP地址自动分配算法进行了简要概述,最后对这些典型算法的优劣进行了简要分析。