网络基础知识
一、基本概念
1.ARPANET & TCP/IP:以“软件”技术将网络硬件整合,使得不同的计算机或者数据可以通过这个软件达成数据沟通(TCP/IP技术也被称为Internet)。
2.以太网络(Ethernet):网络硬件设定与开发标准接口(IS88023)。
注意:网络的传输信息就是 0 与 1 ,因此,数据传输的单位为每秒多少 bit,亦即是 M bits/second, Mbps 的意思。除以8。
二、计算机网络组件
1.节点(node):具有网络地址(IP)的设备之称。
2.服务器主机(server):提供响应(respone)给用户的主机。
3.客户端:发送请求的主机。
4.网络卡(Network Interface Card,NIC):提供网络联机的卡片,目前大多使用RJ-45接头的以太网络卡。
5.网络接口:利用软件设计出来的网络接口,主要用于提供网络地址。一张网卡至少可以搭配一个以上的网络接口。
6.网络形态拓扑(topology):各个节点在网络上的链接方式。
7.网关(route)或通讯闸(getway):具有两个以上的网络接口,可以链接两个以上不同网段的设备。
三、网络的区域范围
1.局域网络(Local Area Network,LAN)
2.广域网(Wide Area Network,WAN)
3.无线局域网(Wireless Local Area Network,WLAN)
四、计算机网络协议
1.OSI(Open System Interconnection)七层协议:
2.计算机网络协议:TCP/IP
打开网页为例子:
应用程序阶段:在浏览器输入 网址确定后,相关信息被包装为一个数据,向下传入应用层。
应用层:由应用层提供的HTTP通信协议,将来自浏览器的信息封装起来,并给予一个应用层报头,送入传送层。
传送层:将传下来的数据再次封装到TCP,给予一个TCP封装头,丢到下一层。
网络层:将TCP数据封装到IP数据包内,再给予一个IP包头。
网络接口层:如果使用以太网络,IP会依据CSMA/CD标准,封装MAC数据帧中,并给予MAC帧头,在转成比特流,最后利用传输介质发送到远程主机上。
五、链接层相关协议
1.广域网使用的设备
1)传统的电话拨接:ppp协议早期上网=调制调解器+电话线+计算机九针串行端口+ppp协议。ppp支持TCP/IP等协议。
2)整合服务数字网络(ISDN):利用电话线和ISDN调制调解器上网。
3)非对称数位用回路(ADSL):电话的高频部分+使用调制调解器+pppo协议把ppp仿真到以太网卡上
4)电缆调制调解器(Cable modem):有线电视缆线+调制调解器链接到ISP
2.以太网络传输协议:CSMA/CD
每张以太网卡出厂时都会有一个独一无二的卡号,那就是所谓的(MAC)。
CSMA/CD联机方式:
图中的Hub为集线器
集线器是一种网络共享介质设备,网络共享介质在一个时间点内,仅能被一台主机使用。
传输流程:
1.监听介质使用情况(Carrier Sense):A主机在发送网络数据包前,先对网络介质进行监听,确认没人使用后,才发送数据帧。
2.多点传输(Multiple Access):A主机发送的数据会被集线器复制,然后发送给所有能够连接到此集线器的主机。(不需要的主机会丢弃之)。
3.冲突检测(Collision Detection):该数据帧附有检测能力,若其他主机也刚好在同一时间发送数据帧,那么两个数据帧就会相冲突,这些数据帧就会销毁,主机等待随机时间重新发送。
3.MAC的封装格式
MAC数据帧(frame):
目的地址和源地址指的就是网卡卡号。注意:在此MAC的传送中,仅在局域网内生效,如果跨过不通过的子网,那么来源与目的硬件地址就会改变。
六、网络层相关数据包与数据
1.IP数据包的封装
略
2.IP地址的组成与分级
IP由32位二进制数值组成:
00000000.00000000.00000000.00000000 ==> 0.0.0.0
11111111.11111111.11111111.11111111 ==> 255.255.255.255
IP的分级:
ClassA: 0xxxxxxx.xxxxxxxx.xxxxxxxx.xxxxxxxx ==> 0.xx.xx.xx~127.xx.xx.xx
|-NetID-|----------------HostID--------------|
ClassB:10xxxxxx.xxxxxxxx.xxxxxxxx.xxxxxxxx ==> 128.xx.xx.xx~191.xx.xx.xx
|---------NetID------|--------HostID--------|
ClassC:110xxxxx.xxxxxxxx.xxxxxxxx.xxxxxxxx ==> 192.xx.xx.xx~223.xx.xx.xx
|----------------NetID-------------|-HostID--|
ClassD:略
ClassE:略
在同一物理网段内,所有的主机的IP具有相同的NetID,并且具有不同的HostID 。
注意:
1.HostID在二进制表示中,不可同时为0,也不可同时为1。因为全为0表示表示整个网段的地址(Network IP),全为1表示广播地址(Broadcast IP)。
例如:192.168.0.0和192.168.0.255。
2.相同物理段内的主机可以通过网卡对网卡直接传递数据(即通过MAC数据帧直接传递)。不同网段要通过路由器才能连接。
3.IP的分类
1)Public IP:公共IP,这种IP才能连上Internet。
2)Private IP:不能直接连上Internet的IP,主要用于局域网内的主机规划连接。
私有IP网段:
ClassA:10.0.0.0~10.255.255.255
ClassB:172.16.0.0~172.31.255.255
ClassC:192.168.0.0~192.168.255.255
3)特殊的Loopback IP网段:
即127.0.0.1 localhost
4.Netmask、子网
1)Netmask(子网掩码):
ClassA: 255.0.0.0
ClassB: 255.255.0.0
ClassC: 255.255.255.0
2)子网的划分:二进制中把HostID的位给NetID。
5.关于路由
在同一个局域网内,可以通过IP广播的方式来实现数据传递的目的。而非局域网就要使用路由器了。
自行回忆路由的工作方式。
路由的命令:见Linux命令表。
6.IP地址与网卡卡号
略
七、 传送层相关数据包与数据
一)面向连接的可靠的TCP协议
1)特权端口:小于1024的端口,启动者的身份必须是root
2)Socket Pair:
1.来源IP+来源端口
2.目的IP+目的端口
3)TCP的三次握手:
A:B你在吗?
B:我在,你在么?
A:我也在。
4)无连接的UDP:
User Datagram Protocol适合不需要严格检验的实时数据,如视频连接。