发新话题
打印

[转帖]技术链接:TCP/IP协议的实现

[转帖]技术链接:TCP/IP协议的实现

http://www.51eda.com/Article/embed_system/rtos/200703/9085.html

嵌入式系统中TCP/IP协议的实现

粘不过来,只好放链接了

如果不知道从哪里看起,那就先把基本概念掌握一下.

TOP

TCP协议是TCP/IP协议簇中的传输层中的一个协议,也是TCP/IP协议簇最为重要的协议之一。在TCP/IP协议簇中,有一个协议和TCP协议非常类似,这就是UDP协议,网络上进行基于UDP协议的数据传送时,发送方只需知道接收方的IP地址(或主机名)和端口号就可以发送UDP数据包。 而接收方只需知道发送方发送数据对应的端口号,就能够接收UDP数据包了。传送数据的双方并不需要进行连接就能够实现数据通讯,这样就导致基于UDP协议的网络应用程序,在传送数据时无法保证可靠性、完整性和安全性。
blog.bitsCN.com网管博客等你来搏


   而TCP协议却与之相反,TCP协议是一种面向连接的,并提供可靠的、完整的、安全的数据传送的网络协议。它提供可靠字节服务的协议。在网络中通过TCP协议传送数据之前,发送方和接收方之间必须建立连接,这种连接就是所谓的"握手"。网络中TCP应用,如同日常生活中的打电话,在通话之前,首先要拨号、震铃(犹如发送方向接收方提出TCP连接申请,并等待TCP连接申请通过)。直到对方拿起电话时(发送方和接收方的TCP连接已经建立),就可以通话了(传送数据)。本文的主要内容就来介绍在Visual Basic .Net实现基于TCP协议网络数据传送的一种简单的方法。

  一.简介本文在实现TCP协议网络应用时使用的类库: play.bitsCN.com累了吗玩一下吧

  .Net FrameWork SDK中提供了很多用以实现TCP协议或与之相关协议的类库,本文就选择五个比较典型,也是比较简单的类加以介绍,即:TcpListener类、TcpClient类、NetworkStream类、StreamReader类和StreamWriter类。TcpClient主要用以提出TCP连接申请。TcpListener主要用以侦听端口号,并接收远程主机的TCP连接申请。NetworkStream类是实现TCP数据传输的基础数据流,StreamReader类作用是通过操作NetworkStream,实现从网络接收数据。StreamWriter类作用是通过操作NetworkStream,实现向网络传输数据。

  1. NetworkStream类:

  NetworkStream类主要是提供用于网络访问的基础数据流。它主要是网络数据传输的载体,并提供同步、异步方式来访问网络数据流。虽然NetworkStream类有构造函数,但在实际情况中更多是通过TcpClient实例的GetStream方法来初始化NetworkStream实例。以下就是使用TcpClient实例的GetStream方法来初始化NetworkStream实例具体代码:

Dim tcpClient As TcpClient

blog.bitsCN.com网管博客等你来搏


Dim nsStream As NetworkStream
tcpClient = New TcpClient( "www.microsoft.com" , 8000)
'对远程主机的8000端口提出TCP连接申请
nsStream = tcpClient.GetStream ( )
'TCP连接建立后,获得网络数据传输的基础数据流

  在下面介绍的程序示例中,就是利用NetworkStream作为传送和接收数据的载体。而操作这个载体的就是StreamWriter类和StreamReader类。表01和表02是NetworkStream类中一些常用的方法、属性及其说明。

方法说明
BeginRead开始异步读者基础数据流。
BeginWrite 开始异步写入基础数据流。
Close关闭流并可选择关闭基础套接字。
EndRead 结束异步读取。
EndWrite结束异步写入。
Flush刷新流中的数据。
Read 从流中读取数据。
Seek将流的当前位置设置为给定值。
SetLength设置流的长度。
Write 将数据写入流。
blog.bitsCN.com网管博客等你来搏

表01:NetworkStream类中常用的方法及其说明

  其中"BeginRead"、"EndRead"和"BeginWrite"、"EndWrite"是二对异步方法,起作用分别相当于"Read"和"Write"方法。

属性说明
CanRead获取当前流是否支持读取。
CanSeek获取流是否支持查找。该属性总是返回 false。
CanWrite获取当前流是否支持写入。
DataAvailable获取是否可以在流上读取数据。
Length流上可用数据的长度。
Position 获取或设置流中的当前位置。

bitsCN.com中国网管联盟
表02:NetworkStream类中属性及其说明

bitsCN全力打造网管学习平台

  2. StreamReader类:

  StreamReader类能够实现对基础数据流的读操作,从而实现对经过基础数据流传送来的数据。表03是StreamReader类的常用的方法及其说明:

需要什么来搜一搜吧so.bitsCN.com

方法说明
Close关闭StreamReader并释放与阅读器关联的所有系统资源。
DiscardBufferedData允许StreamReader丢弃其当前数据。
Peek返回下一个可用的字符,但不使用它。
Read读取输入流中的下一个字符或下一组字符。
ReadBlock 从当前流中读取最大数量的字符并从索引开始将该数据写入缓冲区。
ReadLine从当前流中读取一行字符并将数据作为字符串返回。
ReadToEnd 从流的当前位置到末尾读取流。
blog.bitsCN.com网管博客等你来搏


表03:NetworkStream类中常用的方法及其说明

  3. StreamWriter类:

  StreamWriter类能够实现对基础数据流的写操作,从而实现提供基础数据流来传送数据。表04是StreamWriter类的常用方法及其说明:

需要什么来搜一搜吧so.bitsCN.com

方法说明
Close 关闭当前的StreamWriter和基础流。
Flush清理当前编写器的所有缓冲区,并使所有缓冲数据写入基础流。
Write写入基础数据流。
WriteLine写入重载参数指定的某些数据,后跟行结束符。

如果不知道从哪里看起,那就先把基本概念掌握一下.

TOP

网络适配器又称网卡或网络接口卡(NIC),英文名NetworkInterfaceCard。它是使计算机联网的设备。平常所说的网卡就是将PC机和LAN连接的网络适配器。网卡(NIC) 插在计算机主板插槽中,负责将用户要传递的数据转换为网络上其它设备能够识别的格式,通过网络介质传输。它的主要技术参数为带宽、总线方式、电气接口方式等。它的基本功能为:从并行到串行的数据转换,包的装配和拆装,网络存取控制,数据缓存和网络信号。目前主要是8位和16位网卡。
如果不知道从哪里看起,那就先把基本概念掌握一下.

TOP

 网络适配器又称网卡或网络接口卡(NIC),英文名NetworkInterfaceCard。它是使计算机联网的设备。平常所说的网卡就是将PC机和LAN连接的网络适配器。网卡(NIC) 插在计算机主板插槽中,负责将用户要传递的数据转换为网络上其它设备能够识别的格式,通过网络介质传输。它的主要技术参数为带宽、总线方式、电气接口方式等。它的基本功能为:从并行到串行的数据转换,包的装配和拆装,网络存取控制,数据缓存和网络信号。目前主要是8位和16位网卡。

    网卡必须具备两大技术:网卡驱动程序和I/O技术。驱动程序使网卡和网络操作系统兼容,实现PC机与网络的通信。I/O技术可以通过数据总线实现PC和网卡之间的通信。网卡是计算机网络中最基本的元素。在计算机局域网络中,如果有一台计算机没有网卡,那么这台计算机将不能和其他计算机通信,也就是说,这台计算机和网络是孤立的。

   网卡的不同分类:根据网络技术的不同,网卡的分类也有所不同,如大家所熟知的ATM网卡、令牌环网卡和以太网网卡等。据统计,目前约有80%的局域网采用以太网技术。根据工作对象的不同务器的工作特点而专门设计的,价格较贵,但性能很好。就兼容网卡而言,目前,网卡一般分为普通工作站网卡和服务器专用网卡。服务器专用网卡是为了适应网络服种类较多,性能也有差异,可按以下的标准进行分类:按网卡所支持带宽的不同可分为10M网卡、100M网卡、10/100M自适应网卡、1000M网卡几种;根据网卡总线类型的不同,主要分为ISA网卡、EISA网卡和PCI网卡三大类,其中ISA网卡和PCI网卡较常使用。ISA总线网卡的带宽一般为10M,PCI总线网卡的带宽从10M到1000M都有。同样是10M网卡,因为ISA总线为16位,而PCI总线为32位,所以PCI网卡要比ISA网卡快。

    网卡的接口类型:根据传输介质的不同,网卡出现了AUI接口(粗缆接口)、BNC接口(细缆接口)和RJ-45接口(双绞线接口)三种接口类型。所以在选用网卡时,应注意网卡所支持的接口类型,否则可能不适用于你的网络。市面上常见的10M网卡主要有单口网卡(RJ-45接口或BNC接口)和双口网卡(RJ-45和BNC两种接口),带有AUI粗缆接口的网卡较少。而100M和1000M网卡一般为单口卡(RJ-45接口)。除网卡的接口外,我们在选用网卡时还常常要注意网卡是否支持无盘启动。必要时还要考虑网卡是否支持光纤连接。

    网卡的选购:据统计,目前绝大多数的局域网采用以太网技术,因而重点以以太网网卡为例,讲一些选购网卡时应注意的问题。购买时应注意以下几个重点:

    网卡的应用领域----目前,以太网网卡有10M、100M、10M/100M及千兆网卡。对于大数据量网络来说,服务器应该采用千兆以太网网卡,这种网卡多用于服务器与交换机之间的连接,以提高整体系统的响应速率。而10M、100M和10M/100M网卡则属人们经常购买且常用的网络设备,这三种产品的价格相差不大。所谓10M/100M自适应是指网卡可以与远端网络设备(集线器或交换机)自动协商,确定当前的可用速率是10M还是100M。对于通常的文件共享等应用来说,10M网卡就已经足够了,但对于将来可能的语音和视频等应用来说,100M网卡将更利于实时应用的传输。鉴于10M技术已经拥有的基础(如以前的集线器和交换机等),通常的变通方法是购买10M/100M网卡,这样既有利于保护已有的投资,又有利于网络的进一步扩展。就整体价格和技术发展而言,千兆以太网到桌面机尚需时日,但10M的时代已经逐渐远去。因而对中小企业来说,10M/100M网卡应该是采购时的首选。 

    注意总线接口方式----当前台式机和笔记本电脑中常见的总线接口方式都可以从主流网卡厂商那里找到适用的产品。但值得注意的是,市场上很难找到ISA接口的100M网卡。1994年以来,PCI总线架构日益成为网卡的首选总线,目前已牢固地确立了在服务器和高端桌面机中的地位。即将到来的转变是这种网卡将推广到所有的桌面机中。PCI以太网网卡的高性能、易用性和增强了的可靠性使其被标准以太网网络所广泛采用,并得到了PC业界的支持。 

    网卡兼容性和运用的技术----快速以太网在桌面一级普遍采用100BaseTX技术,以UTP为传输介质,因此,快速以太网的网卡设一个RJ45接口。由于小办公室网络普遍采用双绞线作为网络的传输介质,并进行结构化布线,因此,选择单一RJ45接口的网卡就可以了。适用性好的网卡应通过各主流操作系统的认证,至少具备如下操作系统的驱动程序:Windows、Netware、Unix和OS/2。智能网卡上自带处理器或带有专门设计的AISC芯片,可承担使用非智能网卡时由计算机处理器承担的一部分任务,因而即使在网络信息流量很大时,也极少占用计算机的内存和CPU时间。智能网卡性能好,价格也较高,主要用在服务器上。另外,有的网卡在BootROM上做文章,加入防病毒功能;有的网卡则与主机板配合,借助一定的软件,实现WakeonLAN(远程唤醒)功能,可以通过网络远程启动计算机;还有的计算机则干脆将网卡集成到了主机板上。 

    网卡生产商----由于网卡技术的成熟性,目前生产以太网网卡的厂商除了国外的3Com、英特尔和IBM等公司之外,台湾的厂商以生产能力强且多在内地设厂等优势,其价格相对比较便宜。 
如果不知道从哪里看起,那就先把基本概念掌握一下.

TOP

网络管理,是指网络管理员通过网络管理程序对网络上的资源进行集中化管理的操作,包括配置管理、性能和记账管理、问题管理、操作管理和变化管理等。一台设备所支持的管理程度反映了该设备的可管理性及可操作性。
    而交换机的管理功能是指交换机如何控制用户访问交换机,以及用户对交换机的可视程度如何。通常,交换机厂商都提供管理软件或满足第三方管理软件远程管理交换机。一般的交换机满足SNMP MIB I / MIB II统计管理功能。而复杂一些的交换机会增加通过内置RMON组(mini-RMON)来支持RMON主动监视功能。有的交换机还允许外接RMON探监视可选端口的网络状况。常见的网络管理方式有以下几种:
    (1)SNMP管理技术
    (2)RMON管理技术
    (3)基于WEB的网络管理
如果不知道从哪里看起,那就先把基本概念掌握一下.

TOP

FONT color=#993300>以太网,以太网技术的发展,在速率呈数量级增长的同时,其应用领域也在不断拓宽。而不同应用领域各自的应用需求,又促进了在这些领域内以太网技术的个性化发展。与此同时,以太网的网络处理器芯片技术和测试手段也在发展和成熟之中。

“以太网技术大全”是以太网相关技术集大成者,包括如下内容:光纤以太网、无线局域网、端到端的以太网、多层交换与负载均衡、网络处理器、运营商级宽带技术、以太网安全、以太网测试以及基于以太网的IP存储等等。

技术的发展总是与某一历史时段特定的应用需求密切相关,以太网技术的发展亦如此。而且,以太网技术的发展向来超前,从未滞后。

光纤以太网

光纤以太网产品可以借助以太网设备采用以太网数据包格式实现WAN通信业务。该技术可以适用于任何光传输网络——光纤直接传输、SDH以及DWDM网络传输。目前,光纤以太网可以实现10Mbps、100Mbps以及1Gbps等标准以太网速度,而达到10Gbps后它更将成为各种业务的亮点。

光纤以太网业务与其他宽带接入(例如DS3)相比更为经济高效,但到目前为止它的使用只限于办公大楼或楼群内已铺设光纤的地方。使用以太网的这种新方法的战略价值不仅仅限于廉价的接入,它既可用于接入网,也可用于服务供应商网络中的本地骨干网,它可以只用在第2层,也可以作为实现第3层业务的有效途径,它可以支持IP、IPX以及其他传统协议。此外,由于在本质上它仍属于LAN,因此可用来帮助服务供应商管理企业LAN及企业LAN和其他网之间的互联。

目前及规划中的光纤以太网设备是以第2层LAN交换机、第3层LAN交换机、SONET设备和DWDM为基础。一些公司正计划推出专为网络运营商设计的光纤以太网交换机,这种交换机具有多种特性,可以尽量确保服务质量(如实现数据包分类和拥塞管理等)。所有未来产品均可能要求下列关键技术和性能:高可靠性、高端口密度、服务质量保证等功能。

限制因素

光纤以太网的灵活性和相对较低的价格使它很受欢迎。但是有一个因素限制了它的直接影响力,即运营商已铺设光纤的大楼或楼群很少。光纤是光纤以太网不可或缺的组件,所以光纤以太网业务只能在已部署光纤的地方,或者可以快捷廉价地铺设新光纤的地方提供。

实现设备

光纤以太网最富吸引力的特点是能够提供价格低廉的业务,因为它的多数设备的成本相对较低。大多数光纤以太网设备包括企业第2层以太网交换机,配备光纤接口。交换式光纤以太网产品通常是基于第2层LAN交换机。但是,有些厂商的方案是基于第三层交换机的。光纤以太网方案使SP能够构建混合网络,其中一些位于第2层,而另一些则是第2/3层的组合。

广泛的用途
        

光纤以太网能够支持以下业务类型。

● 高带宽Internet接入以及(潜在的)其他通信接入,如帧中继和专线;

● MAN城域网;

● MAN内的透明LAN业务,即固定速率的LAN到LAN通信;

● 存贮区域网(SAN)业务,以太网连接将在本地服务器和远程存储设备之间代替或传输光纤信道连接;

● VPN业务(类似于规划中基于多协议标记转换标准的VPN),该业务是基于802.1p以太网标准;

● 为其他SP提供的业务,用于集合和连接DSL及电缆调制解调器;

● 可管理的LAN业务和可管理的Internet安全性业务。

更多的应用可望相继出现,如光纤以太网话音业务,这意味着光纤以太网将用作向VoIP骨干网传输话音的接入技术。

[此贴子已经被作者于2007-6-6 1:20:57编辑过]

如果不知道从哪里看起,那就先把基本概念掌握一下.

TOP

 以太网  协议  无线局域网  通信  设计  

从10M、100M、千兆到万兆以太网,以太网技术的发展,在速率呈数量级增长的同时,其应用领域也在不断拓宽。而不同应用领域各自的应用需求,又促进了在这些领域内以太网技术的个性化发展。与此同时,以太网的网络处理器芯片技术和测试手段也在发展和成熟之中。

以太网技术大全”是以太网相关技术集大成者,包括如下内容:光纤以太网、无线局域网、端到端的以太网、多层交换与负载均衡、网络处理器、运营商级宽带技术、以太网安全、以太网测试以及基于以太网的IP存储等等。

技术的发展总是与某一历史时段特定的应用需求密切相关,以太网技术的发展亦如此。而且,以太网技术的发展向来超前,从未滞后。

光纤以太网

光纤以太网产品可以借助以太网设备采用以太网数据包格式实现WAN通信业务。该技术可以适用于任何光传输网络——光纤直接传输、SDH以及DWDM网络传输。目前,光纤以太网可以实现10Mbps、100Mbps以及1Gbps等标准以太网速度,而达到10Gbps后它更将成为各种业务的亮点。

光纤以太网业务与其他宽带接入(例如DS3)相比更为经济高效,但到目前为止它的使用只限于办公大楼或楼群内已铺设光纤的地方。使用以太网的这种新方法的战略价值不仅仅限于廉价的接入,它既可用于接入网,也可用于服务供应商网络中的本地骨干网,它可以只用在第2层,也可以作为实现第3层业务的有效途径,它可以支持IP、IPX以及其他传统协议。此外,由于在本质上它仍属于LAN,因此可用来帮助服务供应商管理企业LAN及企业LAN和其他网之间的互联。

目前及规划中的光纤以太网设备是以第2层LAN交换机、第3层LAN交换机、SONET设备和DWDM为基础。一些公司正计划推出专为网络运营商设计的光纤以太网交换机,这种交换机具有多种特性,可以尽量确保服务质量(如实现数据包分类和拥塞管理等)。所有未来产品均可能要求下列关键技术和性能:高可靠性、高端口密度、服务质量保证等功能。

限制因素

光纤以太网的灵活性和相对较低的价格使它很受欢迎。但是有一个因素限制了它的直接影响力,即运营商已铺设光纤的大楼或楼群很少。光纤是光纤以太网不可或缺的组件,所以光纤以太网业务只能在已部署光纤的地方,或者可以快捷廉价地铺设新光纤的地方提供。

实现设备

光纤以太网最富吸引力的特点是能够提供价格低廉的业务,因为它的多数设备的成本相对较低。大多数光纤以太网设备包括企业第2层以太网交换机,配备光纤接口。交换式光纤以太网产品通常是基于第2层LAN交换机。但是,有些厂商的方案是基于第三层交换机的。光纤以太网方案使SP能够构建混合网络,其中一些位于第2层,而另一些则是第2/3层的组合。

广泛的用途
        

光纤以太网能够支持以下业务类型。

● 高带宽Internet接入以及(潜在的)其他通信接入,如帧中继和专线;

● MAN城域网;

● MAN内的透明LAN业务,即固定速率的LAN到LAN通信;

● 存贮区域网(SAN)业务,以太网连接将在本地服务器和远程存储设备之间代替或传输光纤信道连接;

● VPN业务(类似于规划中基于多协议标记转换标准的VPN),该业务是基于802.1p以太网标准;

● 为其他SP提供的业务,用于集合和连接DSL及电缆调制解调器;

● 可管理的LAN业务和可管理的Internet安全性业务。

更多的应用可望相继出现,如光纤以太网话音业务,这意味着光纤以太网将用作向VoIP骨干网传输话音的接入技术。

[此贴子已经被作者于2007-6-6 1:18:31编辑过]

如果不知道从哪里看起,那就先把基本概念掌握一下.

TOP

挺好

TOP

提示: 作者被禁止或删除 内容自动屏蔽

TOP

‹‹ 上一主题 | 下一主题 ››
发新话题