tcp/ip网络协议

2024-10-17

tcp/ip网络协议(共11篇)

tcp/ip网络协议 篇1

摘要:人们在享受网络技术带来的便利的同时, 安全问题逐渐引起关注, 成为计算机领域的研究热点之一, 笔者在介绍互联网中所使用的TCP/IP协议的基础上, 对TCP/IP协议的安全性进行了讨论。

关键词:TCP/IP协议,常用命令,安全

TCP/IP (Trans m is s ion ControlProtocol/Inte rne t Protocol的简写, 中文译名为传输控制协议/互联网络协议) 协议是当今Internet最基本的协议。TCP/IP协议组是目前使用最广泛的网络互连协议。按照OSI体系划分, TCP/IP协议可分为数据链路层、网络层、传输层和应用层。TCP/IP的几个常用命令。

1 ping

当网络运行中出现故障时, 采用这个实用程序来预测故障和确定故障源是非常有效的。如果ping不成功, 则可以推断故障出现在以下几个方面:网线是否连通, 网络适配器配置是否正确, IP地址是否可用等;如果执行ping成功而网络仍无法使用, 那么问题很可能出在网络系统的软件配置方面, ping成功只能保证当前主机与目的主机间存在一条连通的物理路径。它还提供了许多参数, 如-t使当前主机不断地向目的主机发送数据, -n可以自己确定向目的主机发送的数据帧数等等, 使用Ctrl+C可以中断ping命令。

2 trace rt

这个程序的功能是判定数据包到达目的主机所经过的路径、显示数据包经过的中继节点清单和到达时间。还可以使用参数-d决定是否解析主机名。

3 ne ts tat

这个命令可以看到当前网络的整体使用情况。它可以显示当前正在活动的网络连接的详细信息, 如协议类型、当前主机与远程主机的IP地址以及它们之间的连接状态等。常用的参数为:-e用以显示以太网的统计信息;-s显示所有协议的使用状态, 这些协议包括TCP、UDP和IP, 一般这两个参数都是结合在一起使用的-se。另外-p可以选择特定的协议并查看其具体使用信息, -n以数字形式显示地址和端口号, -a可以显示所有主机的端口号, -r则显示当前主机的详细路由信息。

4 ipconfig

TCP/IP协议的设计与实现使不同计算机之间、不同操作平台之间的通信成为可能。但是, TCP/IP协议是在网络规模不大、应用范围不广、计算机技术尚不够发达的情况下设计与实现的, 当时的一种普遍认识是:安全性同题是上层的问题与底层协议无关, 因此TCP/IP在安全性方面做得不够完善。随着网络规模、计算机技术的日益发展, TCP/IP存在的不可克服的脆弱性。越来越阻碍着TCP/IP的进一步广泛使用, 也难以满足未来网络发展的需求。由于TCP/IP协议族本身存在一些安全缺陷, 所以即使正确地实现了它, TCP/IP网络仍会受到攻击。像序列号欺骗、路由攻击、源地址欺骗和授权欺骗等。对于TCP/IP协议族的安全缺陷可得出三个结论:1) 依赖于IP源地址的认证是极其不安全的;2) 大量的入侵都源于序列号攻击;3) 大多数网络控制机制都是危险的, 而且基于以太网的数据包易被监听, 入侵者甚至可以更改IP或MAC地址, 致使攻击方式更加复杂。

在以太网中, 数据以“帧”为单位进行传输。任何主机发送的帧都会到达与其处于同一网段的所有主机的网络接口, 而每一个网络接口都有一个唯一的硬件地址, 即网卡的MAC地址。信息以数据包的形式传送, 其报头包含了目的主机的MAC地址, 如果其携带的MAC地址是自己的或者是广播地址, 那么就会将数据帧交给IP层, 否则丢掉。网络上也存在一些能接收所有数据包的接口, 攻击通过某些手段使网卡工作在监听模式下, 从而达到非法窃取他人信息的目的。

处理方法:1) 对网络中传输的数据进行加密, 使攻击方无法正确还原窃取的数据, 并且传输的数据是经过压缩的, 可以加快传输的速度。2) 安装检测软件, 做到防范于未然。3) 改用交换式的网络拓扑结构。因为在交换式以太网中, 数据只会被发往目的地址的网卡, 其他网卡接收不到数据包, 但是交换机的成本比较高。

参考文献

[1]Craig Zacker著, 王晓东等译.TCP/IP网络管理[M].中国水利水电出版社, 1998.

[2]王锐等译.网络最高安全技术指南[M].机械工业出版社, 1998.

tcp/ip网络协议 篇2

RFC文档共有8种状态。3个状态属于标准化轨迹,3个状态属于非标准化轨迹,2个状态为其他状态。

(1)标准化轨迹由3个成熟级构成,由低到高分别为提案标准、草案标准和标准。提案标准经过了深入的审查过程,收到多组织关注并认为有价值。但在成为因特网标准之前,还可能有很大变化。

(2)非标准轨迹分为实验性的规范,信息性的规范,历史性的规范。

实验性规范是研究和开发工作的归档记录。信息性的规范并不表示得到了英特网组织的推荐和认可,是一些因特网组织以外的协议组织和提供者提出的未纳入因特网标准的规范可以以这种规范发布。历史性的规范已经被更新的规范所取代。

(3)其他状态。有一些RFC文档专门用于对因特网组织机构商议结果进行标准化,为当前最佳实现BCP。还有一些RFC文档未被分类,其状态被标记为未知性(UNKNOWN),如因特网早起RFC文档。

2-6 Wi-Fi和WiMAX的含义分别是什么?

Wi-Fi是一种短距离无线传输技术,能够在数百英尺范围内支持互联网接入的无线电信号。随着技术的发展,以及IEEE802.11a及IEEE802.11g等标准的出现,现在IEEE802.11这个标准已被统称作Wi-Fi。

WiMAX既是一个与无线城域网标准IEEE802.16相关的互操作性组织,又是一个技术标准。这种技术为“最后一英里”宽带接入提供优于传统的电缆、数字用户线xDSL和T1/E1等方式的接入手段。现在WiMAX还被广义的理解为IEEE802.16标准系列的别称。

3-6 将以203.119.64.0开始的16个C类地址块构成一个超网,请给出该超网的超网地址和超网掩码

超网掩码11111111 11111111 11110000 00000000

255.255.240.0

超网地址是16也地址与超网掩码与运算得到 为203.119.64.0 3-7若一个超网地址是204.68.64.0,超网掩码是255.255.252.0,那么下列IP地址中那些地址属于该超网?

借了2位网络号,连续的号 为204.68.67.216,204.68.66.2 3-8 选a看59页注意3点

4-4 书P75地址解析报文内容的示例(1)(2)4-5 书P76反响地址解析报文内容示例(1)(2)

5-2 当IP数据报在路由器之间传输时,IP首部中那些字段必然发生可能发生变化变化,那些字段

必然变化的是 生存时间(TTL)、首部校验和。每经过一跳路由器,TTL值减一;首部校验和是根据首部生成的,TTL字段变化,首部校验和随之也要变化。可能变化的有 标志、片偏移。

5-4 为什么分片的重组必须在信宿机上进行?

各片作为独立数据包进行传输,在网络中可能沿不同的路径传输,不太可能在中间的某一个路由器上收齐同一数据报的各个分片。另外,不在中间进行重组可以简化路由器上的协议,减轻路由器的负担。

6-3 ICMP与IP协议是什么关系?

ICMP与IP协议位于同一个层次(IP层),但ICMP报文是封装在IP数据报的数据部分进行传输的。也就是说在TCP/IP协议栈中,ICMP协议位于比IP协议略高的位置。但ICMP并不作为一个独立的层次,而是只作为IP层的一部分存在。ICMP协议是IP协议的补充,用于IP层的差错报告、拥塞控制、路径控制以及路由器或主机信息的获取。当遇到IP数据无法访问目标、IP路由器无法按当前的传输速率转发数据包等情况时,会自动发送ICMP消息。我们可以通过Ping命令发送ICMP回应请求消息并记录收到ICMP回应回复消息。通过这些消息来对网络或主机的故障提供参考依据

6-4 书P108

往返时间=T当前-T初始-(T发送-T接收)=32530246-32530000-(32530130-32530100)=216ms 单程时延=216/2=108ms 时间差=32530100-(32530000+108)

6-5 在什么情况下主机决不会收到重定向报文?

你的主机就连了一台路由器作中间设备连接其他网络的时候,是不会收到重定向报文的。因为,路径就只有唯一的一个,永远是“最佳”的。

8-5 解释TCP是如何通过滑动窗口协议实现流量控制的。

滑动窗口协议通过发送方窗口和接收方窗口的配合来完成传输控制。P137两段理解

8-6为了避免和消除拥塞,TCP采用哪些策略来控制拥塞窗口? 书P138

3种策略几段加图

9-1递归解析与反复解析有什么不同?

书P150 两个标题内容

11-2 举例 书P181上面例子。11-5 书P180 中间段

13-3 试分析比较SMTP MIME POP IMAP之间的主要区别

SMTP命令定义了邮件传输和由用户定义的系统功能。当有用户发出邮件请求时,SMTP发送者建立与SMTP接受者之间的一条双向传送通信通道。SMTP接受者可以是最终的接受者,也可以是中间传送者。

POP是一个简单、功能有限的邮件读取协议。它不具有充足的资源保持SMTP服务器和本地邮件传送系统持续运行。但是,在这样的小结点上允许管理邮件并且使这些接点支持一个用户代理或客户邮件服务器又十分有用的。IMAP书P216 MIME并没有改动SMTP或取代它,而只是一个补充协议,它使得非ASCII数据可以通过SMTP传送。MIME继续使用目前的RFC822格式,但增加了邮件信体的结构,并定义了传送非ASCII码的编码规则。网上找的有:、简单邮件传输协议(SMTP):SimpleMailTransferProtocol

1.SMTP规定了在两个相互通信的SMTP进程之间应如何交换信息。SMTP使用客户/服务器模式,负责发送邮件 的SMTP进程作为SMTP客户;负责接收邮件的SMTP进程就是SMTP服务器.2.SMTP规定应答以数字开头,并限定可以使用的应答格式。标准还规定了对给定命令的应答。以2开头的应答意味着成功,以3开头的应答表明需要进一步的动作。4和5开头表示错误:

4开头是暂时性错误,例如磁盘满;

5开头则是永久性错误,例如接收用户不存在

二、POP 邮局协议(Post Office Protocol):

1.POP协议:提供对电子邮件信箱进行远程存取,允许用户的邮箱放置在某个运行邮件服务器程序的邮件服务器上,用户从其个人计算机对邮箱的内容进行访问。2.在收信人邮箱所在的服务器上运行两个服务器程序:

(2)SMTP邮件服务器程序,它用SMTP协议将信件接收到邮件服务器上。

(2)POP服务器程序,它与收信人计算机中的POP客户程序通过POP协议进行通信。POP服务器只有在用户输入鉴别信息(如密码)后才允许对邮箱进行访问。3.IMAP

邮件协议是Internet消息访问协议(Internet Message Access Protocol,IMAP)。IMAP和POP都采用客户/服务器模式工作,但它们有很大差别: POP:从网上收到的邮件交付给一个共享邮件服务器,而个人计算机可以不定期地连接到这个共享服务器,将用户的邮件下载到个人计算机上。此后,所有对邮件的处理都在用户的计算机上进行。POP服务器就可以不再保存这些邮件。因此使用POP允许用户脱机处理收到的信件。

IMAP:能使用户就像在本地一样,操纵在接收邮件服务器上的邮箱,是一个联机协议。若用户需要打开某个邮件时,则该邮件才传到用户的计算机上。在用户未发出删除邮件的命令之前,IMAP服务器邮箱中的邮件一直保存着,因此用户需要经常与IMAP服务器建立连接。

POP和IMAP是用户从目的邮件服务器取回邮件时使用的协议,SMTP是发信人的用户代理向源邮件服务器发送邮件,以及源邮件服务器向目的邮件服务器发送邮件所使用的协议。

.MIME不是一个邮件协议,它没有改动SMTP,也不能代替SMTP,它只是SMTP的一个扩展。允许通过SMTP发送非ASCII码数据。

3.MIME的主要包含:

(1)增加了5个新的邮件头部字段,这些字段提供了有关邮件主体的信息。(2)定义了许多邮件内容的格式,对多媒体电子邮件的表示方法进行了标准化。(3)定义了传送编码,可对任何内容格式进行转换,而不会被邮件系统改变,可以实现透明传输

13-5 简述电子邮件的工作过程

电子邮件的工作过程遵循客户-服务器模式。每份电子邮件的发送都要涉及到发送方与接收方,发送方式构成客户端,而接收方构成服务器,服务器含有众多用户的电子信箱。发送方通过邮件客户程序,将编辑好的电子邮件向邮局服务器(SMTP服务器)发送。邮局服务器识别接收者的地址,并向管理该地址的邮件服务器(POP3服务器)发送消息。邮件服务器识将消息存放在接收者的电子信箱内,并告知接收者有新邮件到来。接收者通过邮件客户程序连接到服务器后,就会看到服务器的通知,进而打开自己的电子信箱来查收邮件。

电子邮件在发送与接收过程中都要遵循SMTP、POP3等协议,这些协议确保了电子邮件在各种不同系统之间的传输。其中,SMTP负责电子邮件的发送,而POP3则用于接收Internet上的电子邮件。在Internet上将一段文本信息从一台计算机传送到另一台计算机上,可通过两种协议来完成,即SMTP(Simple Mail Transfer Protocol,简单邮件传输协议)和POP3(Post Office Protocol,邮局协议3)。SMTP是Internet协议集中的邮件标准。在Internet上能够接收电子邮件的服务器都有SMTP。电子邮件在发送前,发件方的SMTP服务器与接收方的SMTP服务器联系,确认接收方准备好了,则开始邮件传递;若没有准备好,发送服务器便会等待,并在一段时间后继续与接收方邮件服务器联系。这种方式在Internet上称为“存储——转发”方式。POP3可允许E-mail客户向某一SMTP服务器发送电子邮件,另外,也可以接收来自SMTP服务器的电子邮件。换句话说,电子邮件在客户PC机与服务提供商之间的传递是通过P0P3来完成的,而电子邮件在Internet上的传递则是通过SMTP来实现。

tcp/ip网络协议 篇3

关键词:TCP/IP;协议;教学方法;双语教学

中图分类号:TP311.12 文献标识码:A 文章編号:1007-9599 (2012) 10-0000-02

随着全球化进程的推进,社会对高等教育人才培养提出了更高的要求,希望培养出既懂专业又懂外语的复合型人才。为了适应社会的需要,很多高校纷纷推出了各门课程的双语教学,受到了学生和老师的普遍欢迎。然而,在这样的环境下,双语教学的效果并不是很理想。因此,我们有必要对双语教学的方法和技巧作一定的探讨与研究,提高教学效果。《TCP/IP协议》是计算机和信息类专业的一门重要的专业选修课程,是在《计算机网络》课程基础上对网络协议的进一步深化。通过这门课程的学习,学生不但可以加强对计算机网络中概念和术语的理解,而且还可以从协议分析的角度深入理解计算机网络的原理和技术细节。下面,将结合我校近几年开展《TCP/IP协议》双语教学的实践经验,总结双语教学中存在的问题与改革措施。

一、教学中存在的问题

(一)语言障碍是主要因素

双语教学的推进需要一个过程,不能操之过急。我们采用了中英文结合、循序渐进的授课方式。由于大多数学生还是第一次接触用双语讲解的课程,对其中用英语讲授的部分不能很好地适应,这就为知识的理解造成了一定的障碍。因为这方面的知识如果用中文讲解的话,是很好理解的。因此,这里所说的障碍主要来自于语言。

对于教师而言,也提出了更高的要求。不光要求能正确理解英文教材中的知识,还要将知识用英语很好地表达出来。当然,我们负责上课的老师都是英语基础比较好的,用英语表达是没有问题的,但要求用浅显易懂的方式进行讲解,还需要经过一番努力和训练。

(二)课时有限

由于这门课是专业选修课,学院在制订教学计划时,安排的课时有限,仅32学时。相对于我们选用的教材而言,是一个不小的挑战。我们选用参考文献[1]作为教材,内容是非常丰富的。这就要求我们选择一些重要的章节进行讲解,并根据学生的掌握情况,适当调整教学的进度和教学内容。

(三)教学内容比较抽象

《TCP/IP协议》课程中主要讲授的是TCP/IP协议族中的各种协议,以及这些协议之间按照什么方式进行合作,共同完成复杂网络环境下数据传输的问题。课程内容与《计算机网络》课程有一些交叉,但主要突出网络协议的分析与理解,因此大部分内容比较枯燥和抽象。

二、课程教学改革措施

(一)做好课程定位,把握教学方法

要想把双语教学做好,首先要对双语教学做一个合理的定位,或者说是对双语教学的理解。因为双语教学既不是全英文教学,也不是简单地先讲英语再翻译成中文这种方式,应该将两者有机地结合起来。有些地文用英语讲,有些地方则用中文讲解,刚开始的时候,中文比例稍微多点,到后面则使用英语的比例多点,这些都将与学生的英语水平和课程的掌握情况相关的,教师在授课时就根据具体情况,采取相应的措施,把握好中英文授课的比例。

在双语教学中,对课程的讲解当然还是以传授知识为主,语言学习和训练为辅这样的方式来把握。因为这不同于专业英语课,更不是英语课,所以语言学习只是双语教学课程的副产品,掌握相应的知识才是最主要的。

对于每一次课,在讲义中可以首先列出关键字,将涉及到的专业术语集中讲解,并在幻灯片中给出中文解释。另外,为了达到好的授课效果,提倡学生平时多训练一下听力,积极参加学校英语角进行口语练习,以便能够在课堂中与老师交流互动。

(二)加大课时量,精心组织教学和实验内容

这门课程是对《计算机网络》课程的进一步理解与深化,加上课程本身有些抽象,学习难度较大。一方面,相对于我们选用的外文教材,用32学时进行讲授是远远不够的。我们已向教务部门反映,建议增加课时量;另一方面,在有限的课时下,要求教师精心组织每一堂课的教学内容,做好实验安排,才能达到较好的教学效果。

学习完新的内容以后,做适量的英文习题进行巩固是必不可少的。在每次讲完新课后,布置一些典型的习题让学生练习,并要求用英语来解答。通过做一定量的习题,可以让学生消化所讲的新内容,运用所学的知识解决实际问题。

由于实验的课时有限,教师应根据实验大纲精心组织实验内容。实验前,提前布置实验内容和要做的题目,让学生做好预习;实验过程中,组织学生分组讨论,可以使学生将问题理解得更加深入;实验结束后,要求学生认真写实验报告并按时提交。

(三)发挥多媒体技术的优势,提高教学质量

在教学过程中,教师应尽量采用多媒体教学,并使用动画、图示来展示各种协议的基本原理。一幅好的图片胜过千言万语,这样既可以提高学生的兴趣,又可以将抽象的知识具体化、形象化,易于理解。比如,在讲授网络数据包的传输过程中,我们让学生观看“warriors of the net”视频,极大地提高了学生的兴趣,让学生对这方面的知识理解得更加深入。

三、总结

双语教学是培养复合型人才的重要举措,可以使学生在学习专业课的同时,英语水平也获得较大的提高,最终比较顺利地阅读与课程相关的英文文献。本文针对《TCP/IP协议》双语教学中出现的问题,总结出了教学改革的方法,并作了具体分析。实践证明,通过对教学方法作一定的改进,极大地丰富了教学内容,使双语教学取得更好的效果。

参考文献:

[1]W.Richard Stevens.TCP/IP Illustrated[M].北京:机械工业出版社,2000

[2]熊杰,李中年,杜勇,张海波.“TCP/IP协议原理”双语教学实践探索—以长江大学为例[J].教育与教学研究,2009,11:91-92

[3]叶晓国,王雪梅,王明伟.《TCP/IP网络设计及实现》双语课程教学改革研究[J].西安邮电学院学报,2009,3:135-138

tcp/ip网络协议 篇4

TCP/IP网络协议栈源于20世纪60年代美国军方资助的一个分组交换网络的研究项目, 在设计之初是使用环境中的用户都是可信任的, 并未考虑到其中存在的安全问题, 后来TCP/IP协议栈取得巨大的成功, 并促成全球互联网时代的到来, 但随着互联网的逐步扩展与开放, 使得原先用户可信任的缺省假设不再满足, TCP/IP协议栈存在的安全缺陷被发现, 如:缺乏加密认证机制、TCP序列号易被猜测、定时器及连接建立过程中的问题等, 都是TCP/IP协议固有的缺陷。而这些缺陷成了黑客们的攻击点, 对目标网络的安全性构成危害和威胁。

2 常用的 TCP/IP 网络协议栈攻击技术

2.1 网络层攻击

(1) ARP缓存欺骗

ARP缓存是ARP协议的重要组成部分。当使用ARP协议解析了MAC地址和IP地址的映射关系, 该映射便会被缓存下来。因此就不再使用ARP协议来解析已存在缓存中的映射关系。但是因ARP协议是无身份认证的, 所以ARP缓存很容易被恶意的虚假ARP数据报实施欺骗, 这样的攻击被称为ARP缓存欺骗。

在这样的攻击中, 攻击者通过伪造ARP数据报来欺骗被攻击主机的电脑使之缓存错误的MAC地址和IP地址映射。因攻击者的动机不同, 攻击的结果也有很多。例如, 攻击者可以使被攻击主机的默认网关IP映射到一个不存在的MAC地址达到DoS攻击, 攻击者也可以使被攻击主机的通信重定向至其他机器等等。

(2) ICMP重定向攻击

ICMP重定向报文是路由器为网络中的机器提供最新的路由信息以达到最短路由而使用的。当主机收到一个ICMP重定向报文就会根据报文来更新自己的路由表。由于缺乏确认机制, 如果攻击者想要使被攻击主机使用特定路由, 他们只要向被攻击主机发送欺骗性的ICMP重定向报文, 使它改变路由表即可。

2.2 传输层攻击

(1) SYN flood攻击

SYN flood攻击是DoS攻击的一种形式, 攻击者向被攻击主机的TCP端口大量发送SYN请求包, 但不去完成TCP的“三次握手”的过程, 例如攻击使用一个假的IP地址, 或只是简单地不再继续建立TCP连接的过程, 这都使被攻击主机处于”半连接”状态 (即在”三次握手”过程中, 有了前两次握手, SYN包和SYN-ACK包的传输, 但没有最后一次ACK包的确认。

被攻击主机的主机会使用一个队列来保存这种半连接的状态, 当这个队列存储空间满了的时候, 目标主机便无法再接受任何其它连接。这一队列的空间大小事实上是一个系统变量, 在Linux中, 可以这样查看它的大小:#sysctl–qnet.ipv4.tcp_max_syn_backlog。

我们还可以使用”netstat -na”命令去检查队列的使用情况。处于半连接的连接状态被标示为”SYN-RECV”, 完成了”三次握手”的连接被标示为”ESTABLISHED”。

你可以使用Netwox去实施攻击, 并使用嗅探器来获取数据包。攻击实施的过程中, 在被攻击主机上运行”netstat -na”命令去观察受攻击的情况。

SYN Cookie保护机制:如果你的攻击看起来并不成功, 你可以检查一下目标主机的SYN Cookie机制是否被开启。SYN cookie是针对SYN flood攻击的一种保护机制。这一机制会在探测到SYN flood攻击时开始生效。你可以使用sysctl命令去打开或关闭这一机制:

# sysctl -w net.ipv4.tcp_syncookies=0 (关闭SYN cookie)

# sysctl–w net.ipv4.tcp_syncookies=1 (打开SYN cookie)

(2) TCP RST攻击

比如被攻击者使用浏览器访问一个视频网站, 并选择播放某个视频大多数情况下视频的完整内容被存放在一个不同的主机上, 该主机接下来会与被攻击主机建立起TCP连接, 从而使被攻击主机能够接收视频的内容, 通过破坏上述TCP连接来干扰视频流的传输。你可以让被攻击主机试图去访问一个假的IP地址或是攻击主机的IP地址来获取视频 (从而它无法成功获得视频内容) , 但请注意, 攻击的目标应该是被攻击主机, 这是受你控制的一台主机, 不要针对提供视频的主机 (不受你控制的主机) 。你的攻击实验应出于学习目的而不要造成真正的危害。

(3) TCP会话劫持 (bonus)

TCP会话劫持的目标是劫持一个已经存在于两台被攻击主机之间的TCP连接, 在会话中注入恶意的内容。如果这是一个telnet会话连接, 攻击者可以注入一些恶意的命令, 使得被攻击主机运行这些恶意的命令。在这个任务中, 我们使用telnet作为例子, 并且仍然假定攻击机与目标主机在同一个局域网内。

3 TCP/IP 网络协议栈 IP 欺骗的应对措施

上述诸多黑客攻击TCP/IP网络协议栈的情况非常普遍, 这里我们只针对较普遍的IP欺骗采取应对策略加以说明。

在网络攻击技术中IP欺骗是针对TCP/IP协议栈中不完善的机制而发展起来的, 目前尚无简便的方法防止IP地址的欺骗行为。我们只能采取一些弥补措施来使其造成的危害减少到最小的程度。防御这种攻击的主要防范策略:

(1) 在局域网内部的IP数据包发出之前, 需对每一个连接局域网的网关或路由器进行IP源地址进行检验。如果该IP包的IP源地址不是其所在局域网内部的IP地址, 则该IP包就被网关或路由器拒绝, 不允许该包离开局域网。这样攻击者至少需要使用其所在局域网内的IP地址才能通过连接该局域网的网关或路由器。因此建议每一ISP或局域网的网关路由器都对出去的IP数据包进行IP源地址的检验和过滤。

(2) 使用防火墙决定是否允许外部的IP数据包进入局域网, 对来自外部的IP数据包进行检验。如果数据包的IP不是防火墙内的任何子网, 它就不能离开防火墙。这种方法虽然能够很好地解决问题, 但是一些防火墙并不能够正确的区分内部与外部的数据包, 并且在实际应用中局域网与局域网之间也常常需要有相互的信任关系以共享资源, 这种方案不具备较高的实用价值。

(3) 在包发送到网络上之前, 我们可以对它进行加密。虽然加密过程要求适当改变目前的网络环境但它将保证数据的完整性和真实性。虽然服务拒绝攻击的工具很多, 但一般都有相应的补丁, 所以网络管理员应经常在网上查找并安装这此补丁。

4 结束语

针对上面的各种CP/IP网络协议栈攻击技术我们在工作实践中不断寻求不同的解决方案, TCP /IP协议的安全隐患目前是无法从根本上消除的, 我们只有通过深入分析TCP/IP协议所存在的漏洞, 研究黑客利用这些漏洞进行攻击的常用方法并针对这些漏洞可能导致的安全隐患采取相应的解决策略才能达到提高网络安全性能、减少网络系统免受攻击的目的。

参考文献

[1]季云龙, 邵国强.TCP/IP协议的网络安全电脑学习, 2011, 2:29-30.

[2]颜学雄, 王清贤, 李梅林.SYN Flood攻击原理与预防方法, 计算机应用, 2000.

tcp/ip网络协议 篇5

(1)从应用层上来看,攻击者每次攻击时,与8300端口都有建立最多两、三百个tcp连接,

(2)从防火墙监控来看,攻击的流量非常微小,以至于防火墙的流量报警都未触发。

(3)每次攻击产生时,原先的玩家的tcp连接并未断开(应用程序未抛出TCP连接断开的异常),但服务端的再也接收不到来自客户端的任何消息。服务端进程的CPU飙到100%,而内存使用未发现异常。

(4)而且服务端也从未接收到来自攻击者的tcp连接的任何消息。

(5)我们对tcp半连接进行了监控,排除了基于tcp的半连接攻击。

(6)重启服务端程序后,一切恢复正常。

我们的动作以及思考:

(1)最开始,我们以为是服务端程序出现问题,导致CPU 100%,后来通过详细检查程序代码,并使用文本日志定时记录程序每个线程的状态(每5秒钟一次),排除了这一可能性。也就是说,在攻击的过程中,服务端内的各个线程的运行都是正常的。(后来,我们进一步确认了这一点 -- 我们在游戏服务器前加了一个简单的tcp代理服务器,游戏服务器不再对外暴露,所有客户端都与代理服务器连接,由代理服务器在游戏服务器和客户端之间转发所有的数据,结果代理服务器被攻击,代理服务器的代理程序进程的cpu达到100%(也是重启代理程序即恢复正常),而游戏服务器进程一直正常),

(2)排除程序的问题后,我们开始怀疑攻击者攻击的是TCP/IP协议栈(也许是根据TCP/IP的一些漏洞进行攻击),而导致操作系统在处理底层的TCP/IP数据报时,陷入忙碌的状态,而导致CPU 100%,而当底层陷入忙碌的时候,来自客户端的正常消息就来不及接收或者来不及提交到应用层(即我们的服务端程序)了。

我们还未确定,攻击的方式究竟是什么?以前我们碰到的大多是流量攻击,而针对这种低带宽的攻击或TCP/IP漏洞攻击,没有任何经验。不知哪位大侠碰到过类似的情况,能够指点一二,感激不尽了,呵呵

附:我在网上找到了一些可能与我们的攻击有关系的TCP/IP攻击相关的资料,与大家共享一下:

(1)TCP协议堵塞窗口算法攻击技术 :sec.chinabyte.com/207/8816207.shtml

(2)TCP RST攻击 :baike.baidu.com/view/1044719.htm

(3)低速率拒绝服务攻击原理 :blog.chinaunix.com/u/12592/showart_2058363.html

(4)TCP漏洞可导致致命DoS攻击 :sec.chinabyte.com/279/8339279.shtml

(5)泪滴攻击 :baike.soso.com/v4492311.htm

tcp/ip网络协议 篇6

关键词:TCP/IP 协议;网络编程;实验平台;设计

一、设计原理分析

创建网络编程实验的平台主要是为了向实验者提供一个网络编程进行开发调试的环境,降低编程开发实验的难度,提高网络编程实验的效率。网络编程设计的原理为,通过后端的运行程序搭建一个运行平台进行网络编程的实验,这个然后编写这个运行程序的主体框架,结合实验的主要目的及内容要求,在程序的主体框架中空出一些程序代码。通过函数接口的方式来完成实验所需要的代码。在进行网络编程的实验中,实验人员所完成的函数接口必须要保证接口清晰且变量明确,同时还要准确的描述函数功能,然后根据实验平台需要完成的函数编程,开发网络编程。

二、构建网络编程实验平台

网络编程实验平台的构建分为前端与后端,其中后端是实现整个平台的基础,它能够根据前段选择的实验目的及内容要求,来自动生成实验所需要的程序。后端在产生一个完整的网络编程实验程序后,能根据实验目的以及程序的框架组成等内容,合理删减程序框架中的程序模块,为实验人员提供出这些程序模块的函数接口、函数名称等内容。然后,实验平台的后端能够将空缺的函数接口、函数名称以及程序的结构等进行描述,并且发布到实验平台的前端。实验平台的前端能够将后端传递的网络编程代码通过虚拟程序调试环境完成网络编程的开发实验,并且,实验人员在这个虚拟环境中看到的网络编程界面与传统编程环境下所看到的界面是相同的。

前端包含的内容有开发接口、函数库、程序调试模块以及用户程序评价模块等内容。其中最重要的核心模块为调试环境以及程序开发接口。调试环境模块主要是为了辅助用户开发网络编程的顺利进行,结合程序开发接口的模块就能帮助用户清晰的观察网络编程实验中的所有函数。

三、网络编程实验平台的后端设计

我们进行网络编程实验主要是帮助实验人员进行网络编程的实验。过去网络编程实验都是实验人员根据实验的内容以及实验目的,由实验人员从零开始构建网络编程的整个程序框架,最后才能实现特定网络的编程功能。在以前的网络编程实验中,每一个网络的应用程序实现都要编写大量的基础功能网络代码,实验人员为了能够获得一个特定功能,需要开发相当大的基础源码才能实现实验目的,开发工作量大使得进度异常缓慢,无形中也增加了网络编程的实验难度。我们根据网络编程实验平台的设计原理,在实验时,通过系统生成网络编程应用所需要的基础代码,然后只需要实验人员开发关键模块的代码,就能实现特定的功能。

网络应用程序框架自动生成流程图

首先,我们通过用户所选取的网络编程实验功能,自动生成编程实验功能相关的程序,然后描述程序的抽象功能,根据程序功能的抽象描述,我们能够在实验的数据库中提取出相关的程序框架及程序流程,同时,在提取程序流程时又能自动提取出函数库中的函数体,构成了目标程序的框架,最后输出实验形成的程序框架。

基本函数关系的结构一般都类似与树状,最底层的函数体也是最基本的函数体,它们所完成的操作也都是单一的原子操作;在进入到上一层的函数体后,它们又可以进行更高级的操作。这些函数的定义都是设计人员在设计的初期完成的。在编程实验的后期运行中,用户还能够对基本函数的定义自行添加。用户能添加的基本函数粒度包括所有的基本函数,并且也包含用户自行定义的基本函数。

总结:传统的网络编程实验需要花费大量的人力及时间,并且实验效果也很一般,我们通过对网络编程中的程序代码的简化,能够帮助网络编程实验人员解放大量的工作,更多的工作放到开发特定功能代码上。同时,新的网络编程实验平台的辅助开发模块实验效果非常好,具有很好的应用前景。

参考文献:

[1] 杨 华,杨松岸,黄修超. 《以 TMS320C6205为核心的MPEG-4编码器的设计与实现》[J].《通信技术》,2003,(11):1-2.

tcp/ip网络协议 篇7

由于TCP/IP协议复杂难懂,一直以来,学生在理论知识学习阶段缺乏对抽象理论知识的理性认识,只能"死记硬背","似懂非懂",根本谈不上"深入理解",因此多数学生认为这个协议理论性太强,太枯燥、不好学,学了不知怎么用。本文利用案例教学方式对TCP/IP协议网络体系结构进行讲解,使学生宏观形象地理解结构抽象的TCP/IP协议网络体系。

2、TCP/IP协议整体结构

TCP/IP协议起源于20世纪60年代末美国政府资助的一个网络分组交换研究项目,TCP/IP协议是发展至今最成功的通信协议,它被用于当今所构筑的最大的开放式网络系统Internet之上,该协议遵守一个五层的模型概念:应用层、传输层、网络层和数据链路层和物理层。如图一所示,两个用户在进行通信时,要应用TCP/IP协议,最顶层(第五层)是应用层,接下来是传输层、网络层和数据链路层及最低层的物理层(第一层)。两台计算机要传送消息,发送者首先把要传送的消息经过应用层添加首部传送到下一层,同理在传输层和网络层添加首部,在数据链路层除添加首部还要添加尾部,在物理层将数据链路层的信息转换成比特进行传输。

3、TCP/IP协议各层功能

要传送的消息在除物理层的其他层都要添加信息,接下来将介绍添加信息的用处及其实现的功能。

3.1 物理层功能

物理层定义了与传输媒体的接口,完成传输媒体上的信号与二进制数据间的转换,如图2所示,对于双绞线这种传输媒体,物理层负责电波信号与二进制数据间的转换,对于计算机甲和计算机乙,它们只能识别二进制数据,而对于双绞线,只能识别电平信号,这样就需要物理层定义二进制数据与电平信号的转换规则。

3.2 数据链路层功能

物理层已经实现了信号从计算机甲传送到计算机乙,但是并没有考虑消息在传输媒体上的出错情况,在长距离的传送过程中,接收端的消息难免出错。数据链路层提供点到点的可靠传输,利用差错控制编码,添加CRC校验,实现接收端自动纠错功能。

3.3 网络层功能

物理层和数据链路层提供了点到点的数据可靠传输,但是在网络上的计算机并不是直接相连的,而是通过互联网间接相连。网络层给因特网的每一台计算机分配了IP地址,这个IP地址在世界范围内必须是惟一的,这就需要在网络层添加IP地址等信息。如图3所示,路由器根据发送信息首部中的目的IP地址查找出下一跳路由器的地址,实现两台计算机之间的查找。

3.4 传输层功能

物理层、数据链路层及网络层实现了端到端的消息传输,并没有实现进程到进程之间的通信,如果计算机甲有两个QQ同时与计算机乙的QQ进行聊天,那么TCP/IP协议的下三层没有办法分辨计算机甲的两个QQ,因此需要传输层的加入,传输层添加"端口"等信息,给每一个进程添加一个端口号,用来分辨不同的进程。

3.5 应用层功能

向用户提供网络应用环境及简单的操作界面,解决如何将二进制比特信息转换成高级助记符的形式提供给用户。

4、结论

本文利用案例教学模式讲解了TCP/IP协议各个层次的功能,利用一个实际的消息传输例子贯穿各个层次的功能讲解中,使学生能形象理解TCP/IP协议各层次的功能。

摘要:针对"TCP/IP协议"的复杂性和难理解性, 我们应用案例教学模式引导学生积极进行思考、分析, 从而达到深刻理解TCP/IP协议网络体系结构原理和本质之目的。

关键词:TCP/IP协议,案例教学,教学模式

参考文献

tcp/ip网络协议 篇8

关键词:图书馆,计算机网络,TCP/IP协议,IP安全协议,漏洞,欺骗

1概述

面对信息技术的飞速发展和网络的日益普及, 图书馆数据库发展逐渐数字化和网络化, 成为图书馆文献资源的重要组成部分。与传统检索方式相对应地, 通过计算机网络构建的文献、书籍等资料的检索网络更能适应时代的发展需求。各大高校紧跟时代的脚步, 狠抓网络环境下图书馆数据库的建设和发展, 积极构建依赖于计算机网络的文献检索资源, 在高校的教学和科研中发挥了重要作用。

作为计算机网络中的基本通信协议, TCP/IP协议是在图书馆网络资源构建中发挥了不可替代的作用。总体而言, TCP/IP为一组通信协议, 可分为4层, 分别为应用层、传输层、网络层、网络接口层。其中, 应用层主要通过TELNET、FTP、SMTP、DSN等协议, 向用户提供Internet访问。传输层包括TCP和UDP两个基本协议, 主要为用户提供应用程序端到端的通信服务。网络层主要包括IP和ICMP两个基本协议, 从而确保相邻主机间通信的畅通。在TCP/IP协议的最底层工作的是网络接口层, 其工作为确保数据帧发送和接收的畅通。该协议是计算机网络通信的基础, 因此也是确保图书馆计算机网络安全所需要考虑的首要因素。

然而, 由于互连协议最初产生是为了更方便信息的交流, 设计者对安全方面很少甚至不去考虑, 致使TCP/IP协议簇本身存在着一些安全性问题;又由于该协议是计算机网络通信的基础, 针对该协议的攻击手段屡见不鲜, 这就直接导致了TCP/IP协议的安全性问题成为了计算机网络中的严重漏洞, 从而给高等院校图书馆的计算机网络安全构成严重威胁。

2 TCP/IP协议简介

到20世纪90年代, TCP/IP协议就已经发展成了计算机间通信的基础协议, 其广泛的支持性也为其在如今万物互联的大环境中发挥重要支撑作用提供了保证。

TCP/IP协议是由4层不同的协议组成的, 分别介绍如下。

a.链路层, 有时也称作数据链路层或网络接口层, 其任务是加强物理层的功能, 使其上层的通路成为一条无错的数据传输线路。

b.网络层, 主要包括报文分组、路由选择等多项功能。

c.传输层, 工作在网络层和应用层之间, 确保各段信息的正确性, 使其上层的通路不受下层硬件变化的影响。

d.应用层, 包括许多普遍应用的协议, 对不同的文件系统、不同的文本表示方法等具有兼容性。

TCP/IP协议之所以成为网络通信中的基础协议, 其主要原因在于IP协议在网络层中的不可替代的作用。其提供的报文分组、封装等操作, 为异构的互联网络提供了极大的灵活性, 但这同时也导致了诸多安全上的漏洞。

3 TCP/IP协议的漏洞分析及可能的解决途径

造成图书馆计算机操作系统漏洞的一个重要原因, 就是TCP/IP协议本身在安全上的疏忽给整个互联网带来的威胁。本节对TCP/IP协议中有关安全性可能存在的威胁进行了较为详尽的分析, 并给出了可能的针对性攻击手段。

3.1链路层安全漏洞

一般地, 链路层中的协议通常较少, 针对链路层的安全性的讨论也常常成为网络安全工作人员的盲点, 这就造成了链路层成为了计算机网络安全中的薄弱环节。由于以太网中共享信道的存在, 工作在链路层的CSMA/CD协议很容易收到不属于本台主机的数据帧, 从而造成安全威胁。解决该漏洞的对策是:网络分段, 利用交换器、动态集线器和桥等设备对数据流进行限制、加密[1]。

3.2 IP漏洞

在IP协议中, 数据包离开源地址后, 其源IP地址就几乎不再使用, 这就给其它主机假冒该地址提供了可乘之机。远程攻击者可能利用此漏洞获取局域网内部IP地址信息, 对局域网内的用户进行欺骗, 从而破坏网络连接。解决该漏洞的对策是:在路由器设置中, 对来自外部网络但与内网中IP地址相同的报文进行拦截。

3.3 ARP欺骗

ARP协议主要完成网络实体的物理地址到IP地址的转换工作。攻击者往往利用ARP欺骗来进行身份伪装或将目标机诱导到恶意网站中。当发现上网时断时续, 网速变慢甚至连内网主页都无法打开的情况时, 很可能遭受到了ARP欺骗攻击。解决该漏洞的对策是:确保合法用户的IP地址与实际物理地址MAC地址的对应关系, 从而防止非法ARP报文对终端和网关的欺骗。

3.4路由欺骗

在网络层中, 各个路由器会根据路由协议定时向周围的路由器广播路由信息, 从而更新相互的路由表。其攻击者控制路由器发送非法或伪造的路由更新报文, 就可以达到路由欺骗的目的, 从而对网络安全构成威胁。解决该漏洞的对策是:将主机设置为忽略未知来源的路由更新报文或重定向报文, 从而防止路由欺骗。

4 TCP/IP协议安全性及加强措施

针对高等院校图书馆计算机网络和TCP/IP协议的特点, 本节在网络层、传输层和应用层三个方面分析了提高TCP/IP协议安全性的方法。

4.1网络层的安全性

网络层安全协议 (NLSP) 是由国际标准化组织制定的安全协议标准。对于图书馆计算机网络安全来而言, 对网络层安全性的加强最主要的优势在于其操作的透明性, 即, 添加新的安全服务并不需要引入新的应用程序, 或是对其他通信层次和网络部件做任何改动。与此相对, 对网络层安全性的加强, 其最主要的缺点在于, 网络层对于分属不间进程的数据包不做甄别[6]。

总地来说, 网络层是非常适合进行基于主机安全服务的加强性操作的。可以利用安全协议在互联风上建立确保安全性的IP通道和虚拟私有网, 用于机密消息的传递。例如, 利用安全协议对IP包的加密和解密功能, 便可方便地强化防火墙的防卫能力和安全性[7]。RSA数据安全公司日前发起了一个倡议, 主要用于促进防火墙厂商和TCP/IP软件厂商的联合, 共同开发虚拟化的私有网络, 其目标是制定和推荐网络层的安全协议标准。针对图书馆的网络环境而言, 确保网络层的安全, 最主要是要确保网络设备的安全, 如位于网络出口的路由器、交换机等不被非法入侵或感染病毒。这就需要建立制度, 加强管理, 定期对图书馆中的网络设备进行检查维护, 对相应的软件和新设备进行更新, 对路由设备进行重启或重新配置访问控制列表, 从而确保网络层的安全性。

4.2传输层的安全性

在图书馆计算机网络应用中, 主要通过使用广义的进程间通信 (IPC) 机制来与其它层次的安全协议沟通, 从而保证信息传输的便捷高效。因此, 加强其服务安全性的一个首要的措施便是对其通信过程的安全性加以提高, 如BSD、Sockets等措施, 该措施主要通过z加强对实体的身份认证、对传输数据进行加密等来维护传输层的通信安全。在此想法的基础上, Netscape公司制定SSL安全协议, 从而建立了可靠的传输服务。

目前, 工作在传输层中安全机制, 其主要缺点在于不能确保提供服务的透明性, 需要对传输层IPC界面和应用程序进行修改。此外, 同工作在网络层的安全机制相比, 工作在传输层的安全机制可针对进程提供安全服务, 其针对性更强, 操作粒度也更细。对于图书馆计算机网络系统而言, 安装相应的传输层安全性服务是确保该层信息传输安全的重要手段, 应建立相应机制, 定期对传输层安全服务进行更新、清理, 从而确保网络安全。

4.3应用层的安全性

总体而言, 主要通过两种不同的手段强加应用层的安全性, 一种手段是对应用层上的每个软件及其协议分别进行修改。例如, 在RFC1421至1424中, IETF规定了私用强化邮件 (PEM) 来为基于SMTP的电子邮件系统提供安全服务。另一种就是通过引入监控机制, 对工作在应用层的软件进行监督和防范。对于图书馆计算机网络系统而言, 由于使用环境开放, 面临的网络环境也更为复杂, 更需要建立更好的监督和防范机制, 严格控制软件的安装, 最好在主机上加装系统还原卡, 从而确保主机环境相对安全。同时, 需要对主机安装防火墙、网站防篡改系统、入侵检测系统等, 对使用人员进行相应的安全培训, 建立相应的健全安全管理机制。

5结论

近年来, 随着网络的不断发展, 高等院校图书馆计算机网络资源也顺应时代潮流进入了网络化发展的阶段。各大高校分别采取了一系列措施, 加速推进了高校图书馆网络资源的发展。TCP/IP通信协议是网络通信的基础协议, 也是确保网络安全的重要环节。因此, 对TCP/IP通信协议安全性的研究应着力创新求实, 只有这样才会在高等院校图书馆计算机网络资源建议日益发展的今天, 为其安全提供强有力的技术支撑。

参考文献

[1]吴钰峰, 刘泉, 李方敏.网络安全中的密码技术研究及其应用[J].真空电子技术, 2004.

[2]杨义先.网络安全理论与技术[M].北京:北京人民邮电出版社, 2003.

[3]李学诗.计算机系统安全技术[M].武汉:华中理工大学出版社, 2003.

[4]Bedford T, Cooke R.Probabilistic Risk Analysis[M].Cambridge University Press, 2001.

[5]Peltier T R.Information Security Risk Analysis[M].Auerbach Publishtions, 2001.

[6]Gary.Wright, W.Richard Stevens, TCP/IP Illustrated[M].机械工业出版社, 2000.

tcp/ip网络协议 篇9

目前,各医院检验科的检验仪器按对外通信接口大致分为2类:一是串行通信接口(简称串口),二是基于网络接口(RJ45)。前者符合RS232接口协议,这种接口占所有检验仪器的80%以上,而且实现串口编程已经有非常成熟的方法可供参考[2]。后者采用TCP/IP协议,最近几年被越来越多的中外检验仪器厂商所采用,此种连接方式相比较传统的串口方式,更简单方便,而且通信速率高,适于高速率传送,相信会有更广阔的前景。但是目前采用RJ45接口检验仪器联机编程比较少见,本文就此进行探讨。

1 通信协议简介

与串口通信编程使用Microsoft Mscomm32.ocx控件一样,基于RJ45网络接口使用Microsoft MSWINSCK.OCX控件,该控件相比Mscomm32.ocx更简单,因为WINSOCK控件允许用户以UDP和TCP 2种协议中任选一种进行通讯

1.1 UDP协议设置

UDP协议是一种无连接的通讯协议,在通讯之前,需要绑定remotehost和remoteport属性,如果需要双向通讯,还要设置localport属性。

1.2 TCP协议设置

TCP协议是一种连接协议,在通讯前需要进行连接。如果把计算机设为服务器,其设置如下:

根据检验仪器的通信参数需求,选择合适的通信协议。本文根据笔者连接迈瑞BC5500五分类血细胞分析仪来进行说明。

2 编程实现

2.1 编程准备

(1)在计算机上装2块网卡,配置2个IP地址,其中一块连接LIS服务器,另一块连接BC5500血细胞分析仪。

(2)网上下载Mswinsock.Ocx控件。

(3)其他软件工具:Powerbuilder9,TCP&UDP测试工具,Winhex等。

2.2 数据接收分析

(1)用直通网线连接BC5500和LIS网络.

(2)根据BC5500通信说明,把BC5500设置为服务器端,联机计算机设为客户端[2]。以管理员权限进入BC5500的设置—通信界面,设置BC5500的IP地址为192.168.0.1,网关192.168.0.2,见图1。

设置联机计算机和检验仪器连接网卡的IP地址为192.168.0.2,网关为192.168.0.2。

(3)在联机计算机上安装TCP&UDP测试工具,并设为本机为客户端,然后创建到BC5500的联接,目标IP为192.168.0.1,端口为5500,本机端口随意,协议选TCP,从检验仪器BC5500发送检验结果,这时TCP&UDP测试工具接受区应该接收到数据。

(4)用Winhex软件分析上一步接收的数据,可以看到样本数据以0×05开始,以0×0A结束。

3 程序基本流程

3.1 在Windows中注册

使用Microsoft winsock通信控件前,必须事先在Window中注册,因为该控件是Microsoft Visual Basic的控件,最好在开发环境下先安装一个Visual Basic6,或者在注册表中加入HKEY_CLASSES_ROOTLicenses2c49f800-c2dd-11cf-9ad6-0080c7e7b78d=mlrljgrlhltlngjlthrligklpkrhllglqlrk,否则会报未授权错误。

3.2 应用程序中定义外部全局函数

Function long Dllregisterserver()library'Mswinsck.Ocx'

在应用的open事件中加入以下语句:

DLLRegisterServer()//完成Mswinsck.ocx控件注册

3.3 添加ole控件并设置其属性

在程序主窗口中加入ole控件即Mswinsck.Ocx,并命名为ole_comm,按照初始化参数对ole_comm属性进行如下设置:

3.4 数据接收与处理

在ole_comm控件的dataarrival事件中接收数据

//接收到BC5500数据后

string gs_receive

This.object.getdata(def gs_receive)

3.5 数据分析函数f_parsedata(read)

数据分析时要认真阅读迈瑞公司的BC-5500主机与终端通信协议说明书,了解其通信协议、数据格式,这里给出参考程序:

4 联机程序调试

接口程序编制完毕后,启动TCP&UDP测试工具模拟检验仪器BC5500,并把其IP地址设为和BC5500一样,再将模拟数据从TCP&UDP测试工具发送到自己开发的程序,看能否正常接受处理,发现问题给予处理。模拟调试完毕后,再和实际检验仪器联合调试,看数据能否正常接受处理并写入LIS数据库。

5 结论

基于网络接口的检验仪器是今后发展的方向。使用Mswinsck.ocx控件,结合Powerbuilder编程,可以非常方便地实现该类检验仪器检验结果的自动采集,技术简单、成熟,对开发人员要求较低,是一种简便可行的方法。

摘要:目的:实现检验结果的自动采集。方法:使用Mswinsck.ocx控件结合POWERBUILDER编程。结果:实现了基于TCP/IP协议的检验仪器与LIS系统的通信。结论:使用该方法技术简单、可靠,值得推广使用。

关键词:LIS,Mswinsck控件,检验仪器

参考文献

[1]傅征,任连仲.医院信息系统的建设与应用[M].北京:人民军医出版社,2002:162-165.

tcp/ip网络协议 篇10

嵌入式网络通信在各个方面都得到了非常广泛的运用。目前最常见的就是总线和USB数据传输方式, 传输速度即使可以达到较快的水平, 但是其并不能够满足长距离的数据传输。因此, 以太网能够弥补其在数据传输方面的缺陷。以太网能够实现一百米距离点对点的数据传输, 如果要实现更加远距离的数据传输, 则需要使用路由器或者交换机来完成。此文基于对CP2200嵌入式TCP/IP协议进行探究, 并实现以太网嵌入式系统设计。

二、嵌入式TCP/IP协议的探究与实现

TCP/IP协议栈从上到下分别是由应用层、运输层、网络层和网络接口层所组成的四层结构, 每一层各司其职, 都有着不同的网络协议。依据软件实际使用的情况, 在嵌入式系统当中为了达到网络通信的目的, 需要对TCP/IP协议族进行裁剪。在对软件进行初始化的时候, 也对单片机同时进行了初始化, 其中包括对系统时钟、定时器、端口和串口进行了初始化。当然还有CP2200进行初始化, 其中包括对MAC层和物理层进行初始化, 并且中断使能。

在TCP/IP协议栈当中, 运用层包含HTTP协议, 运输层包含TCP协议和UDP协议, 网络层包含ARP协议、IP协议和ICMP协议。以下是嵌入式TCP/IP协议的每个模块的实现流程:

1、HTTP协议模块。

HTTP协议的发送函数http_send () 即是TCP协议的发送函数和数据信息的结合, 但是http_send () 函数主要是实现设计网页内容, JPEG的图片和HTML (超文本标记语言) 等信息的使用依靠其函数实现。

2、TCP协议模块。

TCP协议的发送函数tcp_send () 是需要发送一个不包含任何数据的TCP报文, 其作用是能够对字节头和校验和进行处理。通过对时间功能的设定, TCP协议的重传函数tcp_retransmit () 能够实现对数据最多为两次重传的传输功能, 实现传输功能的应用程序是依靠传送页数据而实现的, 即是HTTP服务程序。TCP协议的保活函数tcp_inacivity () 是没半秒运行一次, 当连接正在建立的状态下, 保活期满了的时候并且没能被再次使用, 就会中断连接。TCP协议的接收函数tcp_rcve () 实现对字节头和校验和的运算, 进而对HTTP服务程序和其连接状态等情况进行断定, 最后进行TCP有限的状态机判断数据包的程序。

3、UDP协议模块。

UDP协议的发送函数udp_send () 能够实现对字节头和校验和进行处理, 其接收函数udp_rcve () 是对所接收的UDP报文进行处理, 如果没有受到UDP报文数据, 就需要发送ICMP终点不可到达报文。

4、ARP协议模块。

ARP协议的发送函数arp_send () , 在发送请求报文的时候, 对于不清楚目的物理地址的, 则是广播报文;在发送应答报文的时候, 接收的一方的目的物理地址需要添加物理地址。ARP协议的重传函数arp_retransmit () 能够实现当其发出ARP请求之后的半秒时间内没有任何响应, 则进行再一次发送的功能, 但是当两次发送没有得到响应就会对报文进行删除。ARP协议的缓存更新函数age_arp_cache () 能够每一分钟更新一次。ARP的解析函数arp_resolve () 能够对所发送的IP报文目的IP地址进行解析, 如果发送IP地址和目的IP地址都不在相同的一个网络当中, 那么此IP地址是网关IP地址, 然后在缓存表当中对其进行查找, 如果找不到就需要发送ARP请求报文。ARP协议的接收函数arp_rcve () 能够实现对报文进行接收或者应答, 对缓存表需要进行更新和重新定时, 如果所接受的报文是应答报文, 则需要发送等候地址解析的IP报文, 但是所接收到的报文是请求报文, 则需要发送ARP应答报文。

5、IP协议模块。

IP协议的发送函数ip_send9 () 能够实现对发送IP报文的20字节头和校验和进行处理, 进而使用网络接口层进行发送。IP协议接收函数ip_rcve () 能够根据版本情况和所接收报文的种类转移到相应的接收函数来处理。

6、ICMP协议模块。

ICMP协议模块的接收函数icmp_rcve () 是实现对ping请求的接收进行处理, 并且处理ICMP不同种类的报文。其中Ping命令请求信息函数ping_send () 是用来检测发送接收两方的接收情况。

三、结言

综上所述, 此文对TCP/IP的网络结构中的各层协议模块进行探究, 基于网络控制芯片CP2200的以太网接口和单片机C8051F340, 并用编程语言来实现嵌入式以太网通信, 同时进一步通过对各个层协议的裁剪, 实现嵌入式以太网的数据通信。根据现阶段来看, 嵌入式网络通信基本上都是依靠TCP/IP协议来实现的, 嵌入式设备和网络两者相结合是嵌入式系统今后发展的主要方向。因此, 我们要更加深入地对嵌入式TCP/IP协议进行探究以及更深层次的功能实现。

参考文献

[1]王树森, 王希杰, 刘秋菊.嵌入式Web远程粮情监控系统的研究与实现[J].自动化仪表, 2013 (10) :243-247.

tcp/ip网络协议 篇11

Delphi具有如下的优点:可视化开发环境的性能;编译器高速度和已编译代码的高效率;编程语言的功能强大,复杂性低;数据库结构的灵活,可扩展性强;框架对设计和使用模式的扩充支持。应用delphi可以很容易地在完成一个C/S结构的局域网系统的设计和实现。这通常涉及到图形用户界面设计、TCP/IP协议、UDP数据广播、局域网内文件传输等一系列技术。本文通过一个简单示例程序,展示了在Delphi语言中进行UDP数据广播及利用Delphi的TServer Socket、TClient Socket构件实现局域网内基于TCP/IP通信的一般步骤和方法。

2 TCP/IP/UDP协议

传输控制协议TCP是Internet最基本的网络通信协议,它由一系列协议组成,下面分别概括介绍TCP/IP协议族中的各协议。

2.1 IP协议网际协议

IP协议是TCP/IP协议族中最为核心的协议。所有的TCP、UDP、ICMP及IGMP数据都以IP数据报格式传输。IP协议提供的是不可靠无连接的数据报传送服务,它只提供最好的传输服务,但不保证IP数据报能成功的达到目的地。IP层也可配置成路由器,路由器比主机多了数据报转发的功能,即对于目的地址为非本机地址的数据报进行转发。

2.2 TCP传输控制协议

TCP是属于传输层的协议,向应用层提供一种面向连接的、可靠的字节流服务。面向连接意味着两个使用TCP的应用(通常为一个客户和一个服务器)在彼此交换数据之前必须先建立一个TCP连接。因此在一个TCP连接中,仅有两方进行彼此通信,没有广播和多播的概念。TCP的特点是可以以某些方式来提供数据传输的可靠性。

2.3 UDP用户数据报协议

UDP是一个简单的面向数据报的传输层协议,它只提供不可靠性的数据传输服务,把应用程序传给IP层的数据发送出去,但并不保证它们能到达目的地。这意味着UDP客户机向指定的远端主机发送数据报时,并未事先确知对方是做好了接收数据的准备的。因此就会发生某一客户机发给一个主机,而此主机事先并未把此客户机列入其目标端口号而加以监听的情况。TCP的校验和是必需的,而UDP的校验和是可选的。当校验和有差错时,UDP就将数据报丢弃并不产生任何差错报文。

综合三种协议,如果通信强调可靠性,应该使用TCP;如果可靠性要求不高,但实时性要求高时可以应用UDP协议。本文这里应用TCP/IP协议作为通信协议,可以保证很强的可靠性。

3 socket编程

在Windows环境下开发网络应用程序,通常都是使用Microsoft的网络编程接口,即Windows套接字Windows Socket(简称Win Sock),它包含在Winsock.dll中的一组API中,用于在网络上传输数据和交换信息,编程人员需要熟悉和掌握相关的网络协议、系统的底层知识以及网络软硬件技术,因而Win Sock编程相当复杂。所幸的是,Delphi对Win Sock进行了有效的封装,并不需要直接与Win Sock的API打交道,只需使用其NMUDP、TClient Socket和TServer Socket等构件,使得对Winsock的访问大大简化。本文通过利用Delphi的TServer Socket、TClient Socket构件实现了局域网内基于TCP/IP的通信。

3.1 Socket简介

抽象地说,Socket是一种双向通信接口,实际上Socket是一种数据结构,用以创建一条在没有互联的进程间发送、接受消息的通道(连接点)。对互联的Socket提供通信接口,使两端可以传输数据。Socket屏蔽了底层通信软件和具体操作系统的差异,使得任何两台安装了TCP协议软件和实现了Socket规范的计算机之间的通信成为可能。Socket接口是TCP/IP网络最为通用的API,也是在Internet上进行应用开发最为通用的API。

3.2 编程代码

在主界面中,使Sever Socket控件和Client Socket控件。Sever Socket控件是基于TCP/IP协议传输的服务器方的控件,它的主要作用是用来监听其它基于TCP/IP传输计算机的连接请求,并在收到连接请求时,建立连接,进行数据传输。Client Socket控件是基于TCP/IP传输的客户方的控件,它的主要作用是监听TCP/IP传输的服务器发出连接请求,在收到服务器的允许连接的响应后,建立连接,并传输数据。之所以在窗体中同时创建Server Socket和Client Socket控件,是因为应用程序既可作为服务器,又可作为客户端使用如图1。

3.2.1 Serversocket和Client Socket之间的连接

对于连接Form(如图2所示),编写客户的申请连接,代码如下:

3.2.2 消息的输入

3.2.3 服务器端的监听

3.2.4 断开链接

4 运行界面

如图3所示,这是程序运行的主界面。在两台计算机各打开一个程序的实例,通过设置好IP和端口以后,就可以进行通信了。通信可以在广域网内进行,也可以在局域网内进行,但要保证计算机支持TCP/IP协议,这可以通过设置计算机实现。

5 结语

通过编程,实现了Delphi下的网络编程。这极大地增强了对TCP/IP协议的理解,认识了套接字的编程思想。通过运用Delphi编程,可以使认识到Delphi本身就是一个功能十分强大的面向对象开发平台,Delphi的可视组件库VCL(Visual Component Library)是一个易学、易用、高效的可重用的软件对象,本文应用的是通信组件。使用Delphi编程不仅界面开发方便迅速,而且对于系统所带组件和自编组件的运用十分方便,只要将组件放置在窗体中,用鼠标移动到要求的位置,改变某些属性就可以满足要求。

摘要:介绍网络传输所涉及的网络通讯技术,包括传输控制协议(TCP)和用户数据报文协议(UDP)的应用,并给出使用Delphi和Socket函数的方法。利用Delphi的TServerSocket,TclientSocket构件实现局域网内基于TCP/IP的通信。

关键词:传输控制协议TCP,用户数据报文协议UDP,IP地址,Winsock

参考文献

[1]黄文兰.Delphi语言开发教务管理系统[J].电脑知识与技术,2006,(20).

[2]向继文.Delphi与汇编语言的混合编程[J].吉林大学学报(自然科学版),2006,(3).

[3]林瑜华.如何在DELPHI中使用SQL语言[J].福建电脑,2005,(10).

[4]严丽平.基于Delphi的C语言词法分析器的实现[J].科技广场,2004,(8).

[5]王忠,迟忠先.Delphi5开发指南[M].北京:电子工业出版社,2000,28-30.

上一篇:代位求偿下一篇:负面事件