概述,网络协议是一种特殊的协议软件,它是各种软硬件必须遵守的共同规则。网络协议遍及OSI模型各层如HTTP,FTP,IGP,NetBIOS等。一般底层协议能自动工作,而三层以上的协议则要人工配置。
一, TCP/IP协议。
1. TCP/IP的核心协议:
1, IP协议,提供包传输功能,包头完整性,无连接传输系统。
2, TCP协议,是IP协议的上层提供可靠的连接并检纠错数据包。
3, UDP协议,与IP协议一样是不可靠的,将网络数据流压缩成数据报形式。
4, ARP协议,地址解释通过IP查MAC地址,在局域网中帧里包含MAC地址。
5, ICMP协议,用于IP主机,路由之间传递控制消息,如PING,TRACERT命令,由于ICMP协议本身的特性,决定了它非常容易受攻击,如利用操作系统规定的ICMP数据包最大不超过64KB,可向主机发ping of death攻击,也可发大量包使其瘫痪。
2,应用接口协议
1, Windows套接字Scoket用于开发网络应用程序是进行程序间通信IPC的BSD方法,它用来让一个进程和其他的进程互通信息。
2, RPC,Remote Proceduce Call是WINDOWS操作系统使用的一种远程过程调用协议,它允许本地机器的程序进程在远程系统无缝地运行代码,RPC在使用TCP/IP协议分析信息时有安全漏洞影响DCOM接口,攻击者发送特殊形式请求到远程机器上的135接口。
3, NetBIOS,Network Basic Input Output System是PC机网络中用得广泛的网络协议之一,大多数的局域网产品都支持它NetBIOS最初由IBM定义,它代表三个含义标准:A,OSI模型中提供会话层接口,;B,用来在会话层和更高层之间传递数据和命令的协议;C,由特定的程序设计接口组成协议实现。
NETBIOS还指定一系列协议命令和网络层协议,这些协议被称为NETBIOS驱动程序,NETBIOS协议命令对应数据帧封装在LLC帧中,而LLC帧又被封在MAC帧中。
4, NDDE,Network Dynamic Data Exchange动态数据交换是WINDOWS支持的3种内部通信机制之一,是应用程序间通过共享内存进行进程间通信的一种形式。
3,应用协议
1, SNMP为网络管理系统提供了底层网络管理的框架允许通过管理工具如HP Open View 或Sun Net Manages 远程管理域控制器或计算机。它是无连接协议,它设计简单易用,扩展灵活。它提供控制代理的MIB数据对象,如Set,Get和Trap命令。
5, TCP/IP应用服务:命令有Finger,FTP,Telnet,RCP,ftfp等
6, TCP/IP诊断工具:arp ipconfig/winipcfg nslookup net netstat nbtstat
Tracert/pathping netsh runas route ping rsh hostname taskkill start等命令。
二, TCP/IP原理
1, TCP协议主要是面向连接可靠交换数据包,但它效率不高占资源大,TCP下层是IP协议根据IP大小不同数据,它又向上层应用层异步传输数据用序列号和反向通知提供可靠性,用字节流通信号窗口技术进行流控。TCP数据段格式是:
16 |
16 |
32 |
32 |
4 |
6 |
6 |
16 |
16 |
16 |
0/32 |
|
源端 |
目的端 |
序号 |
确认号 |
报头长度 |
保留域 |
编码位 |
窗口 |
检验和 |
紧急指针 |
选项 |
数据 |
Source port 呼叫方端口;
Destination port 被叫方端口
Sequence number 用于确保数据到达的正确顺序
Acknowledgement number 期待的下一个TCP字段编号
HLEN 报头长度字数字长为32位
Reserved 保留域设置为0
Code bits 编码位控制功能如会话的建立和终止
Windows 发送者愿意接收的字节数
Check sum报头和数据和检验和
Urgent pointer 紧急数据的尾末
Option 当前定义项,可选
Data 上层数据内容
2, IP协议
IP协议用来将多个包交换网络连接起来,在源地址和目的地址之间传送数据它提供对数据大小的重新组装功能以适应大小不同的包要求。IP协议形成数据报,并调用本地网络协议接口传送数据报,IP协议的两个基本功能是寻址和分段。IP协议使用4个关键技术:A,服务类型质量,B,生存时间,C,选项包括时间翌,安全和特殊路由,D,报头校验用来保证数据的正确传输。IP协议不提供可靠的传输服务只使用报头校验码,两个接口,一个是源机与目的机协议接口,另一个与本地网络的接口。
三, IPX/SPX,Internet Packet Exchange/Sequance Packet Exchange是NOVELL公司为其Netware操作系统专用通信协议,它可路由但占资源大。IPX与IP不同,它是自动配置的,后来开发的NWLink IPX/SPX兼容协议和NWLink NetBIOS两者统称NWLINK通信协议,能适应WINDOWS NT网络和NETWARE环境共存。NWLink IPX/SPX兼容协议只能做客户机实现对NETWARE服务器的访问而NWLink NetBIOS除了能在netware 服务器与windows之间传递信息处,还可在WINDOWS之间传递信息。
四, NetBEUI,NetBIOS Extend User Interface由IBM开发的一种体积小、效率高、速度快的通信协议,适用于百台以下的小型的网络且不能路由,主要用于WINDOWS和OS/2系统,而UNIX,LINUX和NETWARE不支持它。NetBIOS是一种组编程命令供网络管理应用程序接口API,而NetBEUI是建立在NETBIOS基础上的一种传输协议。
五, HTTP协议,
1, 超文本传输协议,目前最新版为HTTP1。1版,它建立TCP/IP基础上确保正确传输超文本文档,适用分布超媒体信息系统允许用户在统一界面下采用不同协议访问的服务如FTP,Archie,SMTP,NNTP等,HTTP还可用于DNS和分布式对管理。
HTTP特点有:
支持C/S模式; 简单快捷常用的请求方法有GET,POST,HEAD;
灵活它允许任意类型的数据对象; HTTP无连接,收到客户应答后即断开连接并且无状态不记忆。
2, HTTP原理:HTTP基于请求/响应模式,当浏览器即HTTP客户端发出请求或点进超级链接,请求格式是:统一资源标识符URL,协议版本号,后边是MIME信息包括请求修饰符、客户机信息和可能的内容。此请求由IP地址指定URL,驻留程序接收到请求后服务器分析响应所要求的文件返回客户。响应格式是:一个状态行,包括信息协议版本号,一个成功或错误的代码,后边是MIME信息包括服务器信息。实体信息和可能的内容。最后断开连接。
六, UDP协议,用户数据报协议,无连接不可靠连接属于一种“强制性”网络连接,UDP传输应用程序可以是客户机也可以是服务器程序不象TCP划分建立C/S程序。UDP传输数据较少,它需要IP协议对它分段,理论IP包数据长度为65535字节,除去20字节IP首部和8字节UDP首部用户数据只有65507字节。UDP主要用于WINS和TFTP当不强调数据完整性可靠性时,如音频和多媒体应用UDP也是最好选择。数据连接很短时如DNS查询用UDP较低开销也是最好的选择。UDP有两个特点:
无连接性,UDP产生信息以广播方式传递;
不可靠保证,数据可能混乱无序,可靠性由其他程序来保障。
七, PPP协议, Point to point protocol是为在两个对等实体间传输数据包建立简单连接而设计的,主要用于广域网的连接,如电缆直连接方式和电话拔号方式都采用此种协议进行广域网的通信,它提供同时全双工双向操作并且假定数据包是按顺序投递的。
1, PPP协议特点:能控制数据链路的建立
2, 能对IP地址进行分配和管理,有效地控制网络通信
3, 允许同时采用多种网络协议,丰富协议的应用
4, 能配置并测试数据链路,并能进行错误检测
5, 能够对网络层的地址和数据压缩进行可选择的协商。
PPP协议主要包括:HDLC高级数据链路技术作为点对点链路封装数据报的基本方法;
LCP链路控制协议建立,配置和测试数据链路;
NCP网络控制协议建立和配置不同的网络层协议,
PPP允许支持多种网络协议如IP,IPX,DECNET等,PPP协议通过默认值分析处理全部的配置,为基于各种主机,网桥,路由等设备提供解决方案。
PPP的连接的六个阶段:1,建立通信的两端发出LCP数据包来配置和测试链路,2,建立连接可能还要认证,即认证验证过程;3,然后PPP发送NCP数据包有来选择一种或多种网络层进行配置,4,配置好后数据报就可传递了;5,PPP的终止,由于可能是载波丢失,认证失败,连接质量失败,超时计数器溢出或者网络管理员关闭链路等这方面原因,PPP链路终止,6,最后过程是PPP链路死亡阶段。