📄 网络协议.htm
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- saved from url=(0046)http://www.embhelp.com/drew/mypage/network.htm -->
<HTML><HEAD><TITLE>网络协议</TITLE>
<META http-equiv=Content-Type content="text/html; charset=gb2312">
<META content="MSHTML 6.00.2900.3157" name=GENERATOR></HEAD>
<BODY>
<P>>><A
href="http://www.embhelp.com/drew/"><BIG>Drew的主页</BIG></A>--->网络协议</P>
<DIV align=center>
<CENTER>
<TABLE borderColor=#88deea height=23 cellSpacing=1 borderColorDark=#88deea
width=754 bgColor=#ffffff borderColorLight=#88deea background=网络协议.files/bg1.gif
border=1>
<TBODY>
<TR>
<TD align=middle width=75 height=1>
<P align=center><A
href="http://www.embhelp.com/drew/"><BIG>主页</BIG></A></P></TD>
<TD align=middle width=75 height=1>
<P align=center><A
href="http://www.embhelp.com/drew/mypage/VxWorks.htm"><FONT lang=ZH-CN
face=System>VxWorks</FONT></A></P></TD>
<TD align=middle width=75 height=1>
<P align=center><A
href="http://www.embhelp.com/drew/processor/arm.htm"><FONT lang=ZH-CN
face=System>ARM</FONT></A></P></TD>
<TD align=middle width=75 height=1>
<P align=center><A
href="http://www.embhelp.com/drew/processor/mpc860.htm"><FONT lang=ZH-CN
face=System>PowerPC</FONT></A></P></TD>
<TD align=middle width=75 height=1>
<P align=center><A
href="http://www.embhelp.com/drew/mypage/driver.htm"><FONT lang=ZH-CN
face=System>硬件驱动</FONT></A></P></TD>
<TD align=middle width=75 height=1>
<P align=center><FONT lang=ZH-CN face=System>网络协议</FONT></P></TD>
<TD align=middle width=75 height=1>
<P align=center><A
href="http://www.embhelp.com/drew/mypage/sourcecode.htm"><FONT lang=ZH-CN
face=System>程序示例</FONT></A></P></TD>
<TD align=middle width=75 height=1>
<P align=center><A href="http://www.embhelp.com/download"><FONT lang=ZH-CN
face=System>下载</FONT></A></P></TD>
<TD align=middle width=75 height=1><A
href="http://www.embhelp.com/drew/mypage/interest.htm"><FONT lang=ZH-CN
face=System>个人兴趣</FONT></A></TD></TR></TBODY></TABLE></CENTER></DIV>
<P align=center> </P>
<P align=center><STRONG><BIG><FONT
color=#0000ff><BIG><BIG>网络协议及网络软件框架设计</BIG></BIG></FONT></BIG></STRONG></P>
<P> </P>
<P><FONT color=#0000ff><BIG><BIG><STRONG>网络协议</STRONG></BIG></BIG></FONT></P>
<P><SMALL><SMALL><SMALL><SMALL><SMALL><SMALL><SMALL><FONT
color=#0000ff><STRONG> </STRONG></FONT></SMALL></SMALL></SMALL></SMALL></SMALL></SMALL></SMALL>
<UL>
<LI><BIG><STRONG><BIG>TCP/IP </BIG>(网络控制协议和网际协议)</STRONG></BIG> </LI></UL>
<BLOCKQUOTE>
<P><STRONG>OSI</STRONG> 与
<STRONG>UNIX</STRONG>系统中协议的对应关系图,及不同网络在OSI中的位置</P></BLOCKQUOTE>
<DIV align=left>
<TABLE height=29 width=380 border=0>
<TBODY>
<TR>
<TD width=132 height=29><STRONG> OSI</STRONG> 开放式系统互联参考模型</TD>
<TD width=37 height=29> </TD>
<TD width=103 height=29><STRONG>UNIX系统</STRONG></TD></TR></TBODY></TABLE></DIV>
<DIV align=left>
<TABLE height=36 width=755 border=1>
<TBODY>
<TR>
<TD width=126 bgColor=#c0c0c0 height=3>应用层(<B>Application)</B></TD>
<TD width=58 height=36 rowSpan=8>------>
<P>------></P>
<P>------></P>
<P> </P>
<P> </P>
<P>------></P>
<P> </P>
<P>------></P></TD>
<TD width=198 bgColor=#c0c0c0 colSpan=4 height=70 rowSpan=2>
<P align=center>Network 网络文件系统(<STRONG>NFS</STRONG>)</P></TD>
<TD width=349 bgColor=#c0c0c0 colSpan=5 height=270 rowSpan=5> </TD></TR>
<TR>
<TD width=126 bgColor=#c0c0c0 height=41>表示层(<B>Presentation)</B></TD></TR>
<TR>
<TD width=126 bgColor=#c0c0c0 height=17>会话层 (<B>Session)</B></TD>
<TD width=48 bgColor=#c0c0c0 height=35><STRONG>SNMP</STRONG></TD>
<TD width=37 bgColor=#c0c0c0 height=35><STRONG>FTP</STRONG></TD>
<TD width=47 bgColor=#c0c0c0 height=35><STRONG>SMTP</STRONG></TD>
<TD width=48 bgColor=#c0c0c0 height=35>Telnet..</TD></TR>
<TR>
<TD width=126 bgColor=#c0c0c0 height=41>传输层(<B>Transport)</B></TD>
<TD width=91 bgColor=#c0c0c0 colSpan=2 height=35>
<P align=center><STRONG>TCP</STRONG> </P></TD>
<TD width=101 bgColor=#c0c0c0 colSpan=2 height=35>
<P align=center><STRONG>UDP</STRONG></P></TD></TR>
<TR>
<TD width=126 bgColor=#c0c0c0 height=40>网络层(<B>Network)</B></TD>
<TD width=198 bgColor=#c0c0c0 colSpan=4 height=35>
<TABLE width="46%" border=1>
<TBODY>
<TR>
<TD width="100%"><STRONG>ICMP,IGMP,RIP</STRONG></TD></TR></TBODY></TABLE>
<P align=center><STRONG>IP</STRONG></P>
<TABLE width="25%" border=1>
<TBODY>
<TR>
<TD width="100%">
<P align=center><STRONG>ARP</STRONG></P></TD></TR></TBODY></TABLE></TD></TR>
<TR>
<TD width=126 bgColor=#c0c0c0 height=69 rowSpan=2>数据链路层(<B>Data
Link)</B></TD>
<TD width=198 bgColor=#c0c0c0 colSpan=4 height=70 rowSpan=2>
<P align=center><STRONG>LAN</STRONG>驱动器 <STRONG>LLC</STRONG>
-----------------------介质访问控制 <STRONG>MAC</STRONG>
<STRONG>CSMA</STRONG>/<STRONG>CD</STRONG>(载波侦听/多路访问)</P></TD>
<TD width=349 bgColor=#c0c0c0 colSpan=5 height=24>在多个网卡驱动程序间交换</TD></TR>
<TR>
<TD width=68 bgColor=#c0c0c0
height=34>Win<STRONG>NT</STRONG>(<STRONG>NDIS</STRONG>)</TD>
<TD width=84 bgColor=#c0c0c0 height=34><STRONG>IEEE</STRONG>802.3 Ethernet
<STRONG>MAC</STRONG></TD>
<TD width=84 bgColor=#c0c0c0 height=34><STRONG>IEEE</STRONG>802.5 Token
ring <STRONG>MAC</STRONG></TD>
<TD width=42 bgColor=#c0c0c0 height=34><STRONG>FDDI</STRONG>
<STRONG>DMAC</STRONG></TD>
<TD width=47 bgColor=#c0c0c0 height=34>网络接口卡驱动器</TD></TR>
<TR>
<TD width=126 bgColor=#c0c0c0 height=25>物理层(<B>Physical)</B></TD>
<TD width=198 bgColor=#c0c0c0 colSpan=4 height=35>物理层</TD>
<TD width=349 bgColor=#c0c0c0 colSpan=5
height=40> </TD></TR></TBODY></TABLE></DIV>
<P> </P>
<P>链接 <A href="http://www.longen.com/S-Z/details~z/TCP-IPIntro.htm"
target=_blank>TCP/IP基础</A></P>
<P>
<UL>
<LI><STRONG><BIG><BIG>普通网卡的MAC层接口</BIG></BIG></STRONG> </LI></UL>
<DIV align=center>
<CENTER>
<TABLE height=1 width=684 border=0>
<TBODY>
<TR>
<TD width=86 height=58>
<DIV align=center>
<CENTER>
<TABLE width="79%" border=0>
<TBODY>
<TR>
<TD width="100%">网卡内部总线</TD></TR></TBODY></TABLE></CENTER></DIV></TD>
<TD width=44 height=58><========></TD>
<TD width=93 bgColor=#c0c0c0 height=33>
<DIV align=center>
<CENTER>
<TABLE width="85%" border=1>
<TBODY>
<TR>
<TD width="100%">
<P align=center>802.3
MAC引擎(Engine)</P></TD></TR></TBODY></TABLE></CENTER></DIV></TD>
<TD width=54 bgColor=#c0c0c0 height=33><====></TD>
<TD width=88 bgColor=#c0c0c0 height=58>
<DIV align=center>
<CENTER>
<TABLE width="100%" border=1>
<TBODY>
<TR>
<TD width="100%">
<P align=center>译码器/解码器(Encoder/decoder) &
PLL</P></TD></TR></TBODY></TABLE></CENTER></DIV></TD>
<TD width=63 height=58><========></TD>
<TD vAlign=top width=137 height=1 rowSpan=2>
<DIV align=center>
<CENTER>
<TABLE height=49 width="100%" border=0>
<TBODY>
<TR>
<TD vAlign=top width="100%" height=45>
<P align=center>10/100 Base-T网络 &
AUI</P></TD></TR></TBODY></TABLE></CENTER></DIV></TD></TR>
<TR>
<TD width=86 height=1 rowSpan=2></TD>
<TD width=44 height=1 rowSpan=2></TD>
<TD width=93 height=1>
<P align=center>||</P></TD>
<TD width=54 height=1 rowSpan=2></TD>
<TD width=88 height=1 rowSpan=2></TD>
<TD width=63 height=1 rowSpan=2></TD></TR>
<TR>
<TD width=93 height=10>
<DIV align=center>
<CENTER>
<TABLE width="86%" border=0>
<TBODY>
<TR>
<TD width="100%">
<P align=center>LED逻辑显示</P></TD></TR></TBODY></TABLE></CENTER></DIV></TD>
<TD vAlign=top width=94 height=25></TD></TR></TBODY></TABLE></CENTER></DIV>
<BLOCKQUOTE>
<P><STRONG><BIG>收包过程</BIG></STRONG></P></BLOCKQUOTE>
<BLOCKQUOTE>
<BLOCKQUOTE>
<P><BIG>
MAC从译码/解码器接收到来的数据包,首先检查SFD,检查完毕后,MAC认为SFD后面所有的位为帧数据位.读目的地址DA,把它和已变成的地址过滤中地址比较,如果DA通过了地址过滤层,这个帧会被放入网卡的存储空间.在整个整接收完成后,MAC检查FCS的有效性.</BIG></P></BLOCKQUOTE></BLOCKQUOTE>
<P><STRONG><BIG><BIG> </BIG></BIG></STRONG>
<UL>
<LI><STRONG><BIG><BIG>以太帧格式(Ethernet Frame Format)</BIG></BIG></STRONG>
</LI></UL>
<P> </P>
<DIV align=center>
<CENTER>
<TABLE height=48 width=629 border=1>
<TBODY>
<TR>
<TD align=middle width=98 bgColor=#00ffff height=18>101010...</TD>
<TD align=middle width=47 bgColor=#00ffff height=18>SFD</TD>
<TD align=middle width=97 bgColor=#c0c0c0 height=18>目的地址DA</TD>
<TD align=middle width=73 bgColor=#c0c0c0 height=18>源地址SA</TD>
<TD align=middle width=104 bgColor=#c0c0c0 height=18>Length Field</TD>
<TD align=middle width=74 bgColor=#c0c0c0 height=18>LLC Data</TD>
<TD align=middle width=35 bgColor=#c0c0c0 height=18>Pad</TD>
<TD align=middle width=53 bgColor=#c0c0c0 height=18>FCS</TD></TR>
<TR>
<TD align=middle width=98 bgColor=#00ffff height=7>可多达7字节</TD>
<TD align=middle width=47 bgColor=#00ffff height=7>1字节</TD>
<TD align=middle width=97 bgColor=#c0c0c0 height=7>6字节</TD>
<TD align=middle width=73 bgColor=#c0c0c0 height=7>6字节</TD>
<TD align=middle width=104 bgColor=#c0c0c0 height=7>2字节</TD>
<TD align=middle width=74 bgColor=#c0c0c0 height=7> </TD>
<TD align=middle width=35 bgColor=#c0c0c0 height=7> </TD>
<TD align=middle width=53 bgColor=#c0c0c0 height=16>4字节</TD></TR>
<TR>
<TD align=middle width=145 bgColor=#00ffff colSpan=2
height=4>帧引导头(preamble)</TD>
<TD align=middle width=427 bgColor=#c0c0c0 colSpan=6
height=4>帧的长度约64字节-----1500字节</TD></TR>
<TR>
<TD align=middle width=572 colSpan=8 height=6>
<P align=left><========传输方向</P></TD></TR></TBODY></TABLE></CENTER></DIV>
<BLOCKQUOTE>
<BLOCKQUOTE>
<P>SFD=Start of Frame Delimite<BR>DA=Destination Address<BR>SA=Source
Address<BR>LLC=Logical Link Control<BR>FCS=Frame Check Sequence or Cyclic
Redundancy Check(CRC)</P>
<P> </P></BLOCKQUOTE></BLOCKQUOTE>
<UL>
<LI><STRONG><BIG><BIG>SNMP </BIG>(简单网络管理协议</BIG> <BIG>Simple Network
Management Protocol)</BIG></STRONG> </LI></UL>
<BLOCKQUOTE>
<P><STRONG>SNMP</STRONG> </P>
<BLOCKQUOTE>
<P>用来管理网络设备和获得外围设备信息,属于TCP/IP的一部分,具有协议独立性.<FONT
lang=ZH-CN>利用</FONT>SNMP<FONT lang=ZH-CN>,
一个管理工作站可以远程管理所有支持这种协议的网络设备,包括监视网络状态、修改网络设备配置、接收网络事件警告等。</FONT></P></BLOCKQUOTE>
<P><STRONG>管理信息库(MIB)</STRONG>: </P>
<BLOCKQUOTE>
<P>两种类型 MIB-1, MIB-2.MIB<FONT lang=ZH-CN>是一个树形结构,</FONT>SNMP协议<FONT
lang=ZH-CN>消息通过遍历</FONT>MIB<FONT
lang=ZH-CN>树形目录中的节点(OID)来访问网络中的设备.</FONT></P>
<P><FONT size=3>MIB
树的每个节点被指定为一个数字(非负数),同一层的节点用不同的数字区分.这些节点数字由标准组织指定.MIB树中的任何一个节点由其所处的位置来命名.因为同一层的节点数字皆不同,到达某个节点的路由可以由从树根到此节点所经过的节点的数字串来表示.这个数字串称为相应MIB对象的对象标识符(OID).</FONT></P>
<P><FONT size=3>例如, ODI,1.3.6.1.2.1.1 代表的对象是从
命名为“1”的根节点开始,后续的下级节点“3”,再下一级是“6”,依此类推.</FONT></P></BLOCKQUOTE>
<P><STRONG>管理信息结构标识(SMI)</STRONG>: 定义MIB中行的技术规范.</P>
<P>SNMP目前有两种版本 SNMP v1 和 SNMP v2.</P>
<P> </P>
<P>SNMP协议单元(PDU)实现代理和管理站间的通信,及Server 和 Target的通信.</P>
<P>通信类型</P></BLOCKQUOTE>
<DIV align=center>
<CENTER>
<TABLE height=141 width=679 border=1>
<TBODY>
<TR>
<TD width=36 height=14>类型</TD>
<TD width=71 height=14>
<P align=center>PDU类型</P></TD>
<TD width=151 height=14>
<P align=center>传输方向</P></TD>
<TD width=397 height=14>
<P align=center>说明</P></TD></TR>
<TR>
<TD width=36 height=17>0</TD>
<TD width=71 height=17>GetRequest</TD>
<TD width=151 height=17>Server--->Target</TD>
<TD width=397 height=17>用来从Target上获得一个或多个SNMP的对象(OID)值</TD></TR>
<TR>
<TD width=36 height=26>1</TD>
<TD width=71 height=26>GetNextRequest</TD>
<TD width=151 height=26>Server--->Target</TD>
<TD width=397 height=26>在Target上的MIB中获得下一个SNMP的对象(OID)值</TD></TR>
<TR>
<TD width=36 height=16>2</TD>
<TD width=71 height=16>GetResponse</TD>
<TD width=151 height=16>Target---->Server</TD>
<TD width=397 height=16>Target响应ServerSNMP对象请求</TD></TR>
<TR>
<TD width=36 height=15>3</TD>
<TD width=71 height=15>SetRequest</TD>
<TD width=151 height=15>Server--->Target</TD>
<TD width=397 height=15>Server上程序为TargetMIB中的OID赋值</TD></TR>
<TR>
<TD width=36 height=14>4</TD>
<TD width=71 height=14>Trap</TD>
<TD width=151 height=14>Target---->Server</TD>
<TD width=397
height=14>Target用它来通知Server有一个特定时间发生</TD></TR></TBODY></TABLE></CENTER></DIV>
<P>目前好的SNMP网络管理软件是惠普公司的 OpenView.</P>
<P>
<UL>
<LI><BIG><STRONG><BIG>BSD套接字(BSD Sockets)</BIG></STRONG></BIG> </LI></UL>
<P> </P>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -