1. 什么是协议 ...................................................................................................................... 2 2. TCP/IP协议分层: ......................................................................................................... 2 3. 网络序和主机序 .............................................................................................................. 2 4. 数据链路的广播和多播 .................................................................................................. 2 5. 交换机(switch): ............................................................................................................ 3 6. VLAN: .............................................................................................................................. 3 7. 交换过程: ...................................................................................................................... 3 8. 地址解析协议ARP协议 .................................................................................................. 3 9. IP地址,子网掩码? ..................................................................................................... 4 10. ICMP:(网络控制报文)协议。 ........................................................................................ 4 11. 路由器(router): .......................................................................................................... 4 12. NAT .................................................................................................................................... 4 13. 常用的网络命令 .............................................................................................................. 4 14. 客户机建立和服务器之间建立通讯的机制分为以下几步: ...................................... 4 15. 服务器进行监听的基本步骤如下: .............................................................................. 4 16. 通用网络分析开发包 ...................................................................................................... 5 17. Sniffer:嗅探器 ............................................................................................................ 5 18. IP协议的定义,在哪个层上面,主要有什么作用? TCP与UDP呢? ..................... 5 19. 交换机和路由器分别的实现原理是什么?分别在哪个层次上面实现的? ............... 5
一、网络基础知识
1. 什么是协议
协议是两个独立的个体之间为了通信而制定的参考标准。常见的有http,ftp等。 协议的载体:在网络系统中,协议是通过数据报文来作为载体的,即协议所定义的通信标准都应用在数据报中。
2. TCP/IP协议分层:
1) 应用层:应用程序间沟通的层,如简单电子邮件传输SMTP,文件传输协议FTP,网络远
程访问协议Telnet等。
2) 传输层:提供节点间的数据传送服务,如传输控制协议TCP,用户数据报协议UDP
等,TCP和UDP给数据包加入传输数据并把它传输到下一层中,这一层负责传送数据,并且确定数据已被送达并接收。
3) 网络层:负责提供基本的数据封包传送功能,让每一块数据包都能到达目的主机(但
不检查是否被正确接收),如ICMP,IGMP,网际协议IP。
4) 链路层:对实际的网络媒体的管理,定义如何使用实际网络来传送数据。有设备驱动
程序及接口卡等。
注1:TCP/IP协议为什么分层:
为了协议栈可以运行在各种不同底层硬件之上,即协议栈与硬件无关。便于协议栈的结构实现。
注2:TCP/IP模型和OSI模型的比较:
3. 网络序和主机序
网络序:数据报文按照高序字节顺序传输,即把内存地址从左到右按照由低到高的顺序写出。如双字节0xa050,在网络中将按照0x50a0的形式进行传输。
主机序:不同的CPU有不同的字节序类型,这些字节序是指整数在内存中保存的顺序 这个叫做主机序。最常见的有两种:1) Little endian:将低序字节存储在起始地址;2)Big endian:将高序字节存储在起始地址。
4. 数据链路的广播和多播
广播:当数据链路层中的目的MAC地址填充为全1的时候,表明该报文是广播报文,
当网络上产生此报文时,HUB,或者交换机将往网络上的每台主机转发该报文。典型的应用是ARP协议, DHCP协议。
多播:多播MAC地址是根据IP报头中的目的IP和多播MAC基地址运算而来的。多播的主要应用在于组播,而组播的主要作用在于进行可控制的数据转发,实际应用如IPTV,相比广播而言可以减小网络设备的处理负担。
5. 交换机(switch):
根据第二层数据链路层的MAC地址和MAC地址表来完成端到端的数据交换的。第二层交换机只须识别数据帧中的MAC地址,而直接根据MAC地址转发。第二层交换的解决方案,是一个“处处交换”的方案,虽然该方案也能划分子网、限制广播、建立VLAN,但它的控制能力较小、灵活性不够,也无法控制流量,缺乏路由功能。
注1:交换机和HUB的区别
集线器(HUB)是中继器的一种形式。它工作在物理层,与中继器一样,常用于两个网络节点之间物理信号的双向转发。完成信号的复制,调整和放大功能。不同的是HUB能提供多端口服务。
交换机(SWITCH)类似于HUB,能连接两个局域网段。它工作在数据链路层,能起到过滤帧的作用。SWITCH检测帧的源地址及目的地址。
6. VLAN:
又称虚拟局域网,是由位于不同物理局域网段的设备组成。虽然VLAN所连接的设备来自不同的网段,但是相互之间可以进行直接通信,好像处于同一网段中一样,由此得名虚拟局域网。一个VLAN即是一个单独的广播域,一个VLAN的广播报文不能转发到另一VLAN,为了创建虚拟网络,需要对已有的网络拓扑结构进行相应的调整。
7. 交换过程:
交换机的MAC地址-端口表:任何一个从交换机经过的报文均会被交换机进行扫描,如交换机的端口1收到一个包他的源MAC地址是00:01:02:03:04:05, 而它的目的MAC是00:02:03:04:05:06, 则交换机会用源MAC去搜索MAC地址-端口表,如果发现改表中存在该MAC地址,并且端口与当前收到报文的端口不一致则会更新该端口号为当前端口号。
然后交换机会使用该报文的目的MAC地址去搜索MAC地址-端口表,如果存在该表项则根据表项中的物理端口号将报文发送出去,如果不存在则丢包。
8. 地址解析协议ARP协议
将网络层IP地址 解析为数据连接层MAC层的MAC地址。本来主机是完全不知道
这个IP对应的是哪个主机的哪个接口,当主机要发送一个IP包的时候,会首先查一下自己的ARP高速缓存(就是一个IP-MAC地址对应表缓存),如果查询的IP-MAC值对不存在,那么主机就向网络发送一个ARP协议广播包,这个广播包里面就有待查询的IP地址,而直接收到这份广播的包的所有主机都会查询自己的IP地址,如果收到广播包的某一个主机发现自己符合条件,那么就准备好一个包含自己的MAC地址的ARP包传送给发送ARP广播的主机,而广播主机拿到ARP包后会更新自己的ARP缓存(就是存放IP-MAC对应表的地方)。发送广播的主机就会用新的ARP缓存数据准备好数据链路层的的数据包发送工作。
9. IP地址,子网掩码?
IP地址是网络中主机的唯一标识。
子网掩码表示方法:网络号与子网号置1,主机号置0。如255.255.255.0。
10. ICMP:(网络控制报文)协议。
ICMP协议大致分为两类,一种是查询报文,一种是差错报文。其中查询报文有以下几种用途:1)ping查询;2)子网掩码查询(用于无盘工作站在初始化自身的时候初始化子网掩码);3)时间戳查询(可以用来同步时间)。
注1:ICMP的应用—Traceroute:用来侦测主机到目的主机之间所经路由情况。
11. 路由器(router):
路由器负责根据IP地址进行寻址转发数据报文,而且路由器还具有防止广播,防止IP环路的功能 ,以及其他的如NAT,DHCP SERVER等等附加功能(根据厂商的实现而定)。
12. NAT
网络地址转换(Netorwork Address Translation),NAT将每个局域网节点的地址转换成一个IP地址,反之亦然。它也可以应用到防火墙技术里,把个别IP地址隐藏起来不被外界发现,使外界无法直接访问内部网络设备,同时,它还帮助网络可以超越地址的限制,合理地安排网络中的公有Internet 地址和私有IP地址的使用。
13. 常用的网络命令
Windows:
1)ipconfig—网卡信息获取。 /all /release /renew 2)ping—测试与对方网络是否能够互通。 -n -t -l 3)tracert—对IP报文到达目的地的路径进行探索。 -w -h 4)arp—管理当前设备的arp高速缓存。 /-a -d -s
5)netstat--显示活动的TCP连接、计算机侦听的端口、以太网统计信息、IP 路由表、IPv4 统计信息以及 IPv6 统计信息。使用时如果不带参数,netstat 显示活动的 TCP 连接。 /a /e /n /o /p /s /r Linux/Unix:
1)ifconfig 2)ping 3)tracerouter 4)netstat 5)arp
14. 客户机建立和服务器之间建立通讯的机制分为以下几步:
1)初始化socket相关的数据结构,本机地址,本机端口,服务器地址,服务器端口 2)Socket创建一个socket
3)Connect与远程服务器进行连接 4)Send发送数据或者recv接收数据 5)根据自定义的报文格式进行解析
15. 服务器进行监听的基本步骤如下:
1)初始化socket结构,包括本机地址,本机监听端口,对端地址,对端端口等。 2)Socket创建一个socket 3)Bind本机监听端口
4)Listen进行监听本机的监听端口
5)Accept进行接受远程客户机发起的连接
6)Send发送数据或者recv接受客户机发送的数据 7)根据自定义的报文结构进行解析
16. 通用网络分析开发包
Winpcap:免费,简单,好用,高效,提供了一套标准的抓包接口,与libpcap兼容,可使得原来许多UNIX平台下的网络分析工具快速移植过来,支持内核态的统计模式.
监听报文:能够跟操作系统同步监听报文,开发人员可以根据报文构造应答报文进行自动化测试。
发送报文:能够直接从开发人员定制的缓冲区中发送任意的报文,进行性能测试。
17. Sniffer:嗅探器
主要作用是通过绑定网卡来收取网络的数据报文和发送数据报文。具体软件如sniffer, ether peek NX, iris等。
Sniffer的特点:操作简单,容易上手, 发送报文功能稳定,但是修改报文不够方便,无法自动计算修改过的报文的校验和。
Ether peek特点:丰富的协议解析功能, 解析出的协议较sniffer pro易读,修改报文方便,会自动计算报文的校验和, 但是发包功能不够稳定,cpu利用率占用高,经常会造成系统其他程序响应慢。
18. IP协议的定义,在哪个层上面,主要有什么作用? TCP与UDP呢?
IP协议是网络层的协议,它实现了Internet中自动路由的功能,即寻径的功能,TCP协议是一个传输层的协议它向下屏蔽了IP协议不可靠传输的特性,向上提供一个可靠的点到点的传输,UDP提供的是一种无连接的服务,主要考虑到很多应用不需要可靠的连接,但需要快速的传输。
19. 交换机和路由器分别的实现原理是什么?分别在哪个层次上面实现的?
交换机用在局域网中,交换机通过纪录局域网内各节点机器的MAC地址就可以实现传递报文,无需看报文中的IP地质。路由器识别不同网络的方法是通过识别不同网络的网络ID号(IP地址的高端部分)进行的,所以为了保证路由成功,每个网络都必须有一个唯一的网络编号。路由器通过察看报文中IP地址,来决定路径,向那个子网(下一跳)路由,也就是说交换机工作在数据链路层看MAC地址,路由器工作在网际层看IP地质但是由于现在网络设备的发展,很多设备既有交换机的功能有由路由器的功能(交换试路由器)使得两者界限越来越模糊。
因篇幅问题不能全部显示,请点此查看更多更全内容