|
最近更新日期:2011/07/15
2.6 重点回顾:
- 虽然目前的网络媒体多以以太网络为标准,但网络媒体不只有以太网络而已;
- Internet 主要是由 Internet Network Information Center (INTERNIC) 所维护;
- 以太网络的 RJ-45 网络线,由于 568A/568B 接头的不同而又分为并行线与跳线;
- 以太网络上最重要的传输数据为 Carrier Sense Multiple Access with Collision Detect (CSMA/CD) 技术,
至于传输过程当中,最重要的 MAC 讯框内以硬件地址 (hardware address) 数据最为重要;
- 透过八蕊的网络线 (Cat 5 以上等级),现在的以太网络可以支持全双工模式;
- OSI 七层协议为一个网络模型 (model) ,并非硬性规定。这七层协议可以协助软硬件开发有一个基本的准则,
且每一分层各自独立,方便使用者开发;
- 现今的网络基础是架构在 TCP/IP 这个通讯协议上面;
- 数据链结层里重要的信息为 MAC (Media Access Control),亦可称为硬件地址,而
ARP Table 可以用来对应 MAC 与软件地址 ( IP ) ;
- 在网络媒体方面, Hub 为共享媒体,因此可能会有封包碰撞的问题,至于
Switch 由于加入了 switch port 与 MAC 的对应,因此已经克服了封包碰撞的问题,也就是说,Switch
并不是共享媒体;
- IP 为 32 bits 所组成的,为了适应人类的记忆,因此转成四组十进制的数据;
- IP 主要分为 Net ID 与 Host ID 两部份,加上 Netmask
这个参数后,可以设定『网域』的概念;
- 根据 IP 网域的大小,可将 IP 的等级分为 A, B, C 三种常见的等级;
- Loopback 这个网段在 127.0.0.0/8 ,用在每个操作系统内部的循环测试中。
- 网域可继续分成更小的网域 (subnetwork),主要是透过将 Host_ID 借位成为 Net_ID 的技术;
- IP 只有两种,就是 Public IP 与 Private IP ,中文应该翻译为
公共 IP 与 私有(或保留) IP,私有 IP 与私有路由不可以直接连接到 Internet 上;
- 每一部主机都有自己的路由表,这个路由表规定了封包的传送途径,在路由表当中,最重要者为默认的通讯闸
( Gateway/Router );
- TCP 协议的表头数据当中,那个 Code (control flags) 所带有的 ACK, SYN, FIN 等为常见的旗标,
可以控制封包的联机成功与否;
- TCP 与 IP 的 IP address/Port 可以组成一对 socket pair
- 网络联机都是双向的,在 TCP 的联机当中,需要进行客户端与服务器端两次的 SYN/ACK 封包发送与确认,
所以一次 TCP 联机确认时,需要进行三向交握的流程;
- UDP 通讯协议由于不需要联机确认,因此适用于快速实时传输且不需要数据可靠的软件中,例如实时通讯;
- ICMP 封包最主要的功能在回报网络的侦测状况,故不要使用防火墙将他完全挡掉;
- 一般来说,一部主机里面的网络参数应该具备有:IP, Netmask,
Network, Broadcast, Gateway, DNS 等;
- 在主机的 port 当中,只有 root 可以启用小于 1024 以下的 port ;
- DNS 主要的目的在于进行 Hostname 对应 IP 的功能;
2.7 本章习题
- 在 ISP 提供的网络服务中,他们提到传输速度为 1.5M/382K ,请问这个数据的单位为何?
数据单位为 bits/second, 与惯用的 bytes 差 8 倍。
- 什么是 MAC (Media Access Control) ,MAC 主要的功能是什么?
Media Access Control 的缩写,为以太网络硬件讯框的规格,以太网络就是以 MAC 讯框进行数据的传送。
目前 MAC 也常被用为以太网络卡卡号的代称。
- 什么是封包碰撞?为什么会发生封包碰撞?
当主机要使用网络时,必须要先进行 CSMA/CD 监听网络,如果(1)网络使用频繁 (2)网络间隔太大,
则可能会发生监听时均显示无主机使用,但发出封包后却发生同步发送封包的情况,此时两个封包就会产生碰撞,
造成数据损毁。
- ARP Table 的作用为何?如何在我的 Linux 察看我的 ARP 表格?
ARP 协议主要在分析 MAC 与 IP 的对应,而解析完毕后的数据会存在系统的内存中,
下次要传送到相同的 IP 时,就会主动的直接以该 MAC 传送,而不发送广播封包询问整个网域了。
利用 arp -n 即可
- 简略说明 Netmask 的作用与优点;
Netmask 可以用来区分网域,且 Netmask 可以有效的增加网络的效率,这是因为 Netmask
可以定义出一个网域的大小,那么 broadcast 的时间就可以降低很多!一般来说,
我们如果要将一个大网域再细分为小网域,也需要藉由 Netmask 来进行 subnet 的切割。
- 我有一组网域为: 192.168.0.0/28 ,请问这个网域的 Network, Netmask, Broadcast
各为多少?而可以使用的 IP 数量与范围各是多少?
因为共有 28 个 bits 是不可动的,所以 Netmask 地址的最后一个数字为 11110000,也就是 (128+64+32+16=240) ,所以:
Network:192.168.0.0
Netmask:255.255.255.240
Broadcast:192.168.0.15
IP:由 192.168.0.1 ~ 192.168.0.14 共 14 个可用 IP 喔!
- 承上题,如果网域是 192.168.0.128/29 呢?
因为是 29 个 bits 不可动,所以最后一个 Netmask 的地址为: 11111000 也就是 (128+64+32+16+8=248),所以:
Network:192.168.0.128
Netmask:255.255.255.248
Broadcast:192.168.0.135
IP:由 192.168.0.129 ~ 192.168.0.134 共 6 个可用的 IP 喔!
- 我要将 192.168.100.0/24 这个 Class C 的网域分为 4 个子域,请问这四个子域要如何表示?
既然要分为四个网域,也就是还需要藉助 Netmask 的两个 bits (2的2次方为4啊!),所以
Netmask 会变成 255.255.255.192 ,每个子域会有 256/4=64 个 IP ,而必须要扣除
Network 与 Broadcast ,所以每个子域会有 62 个可用 IP 喔!因此,四个子域的表示方法为:
192.168.100.0/26, 192.168.100.64/26, 192.168.100.128/26, 192.168.100.192/26。
- 如何观察 Linux 主机上面的路由信息 (route table)?
路由信息的观察可以下达 route 来直接察看!或者是下达 route -n 亦可
- TCP 封包上面的 SYN 与 ACK 标志代表的意义为何?
SYN 代表该封包为该系列联机的第一个封包,亦即是主动联机的意思;
ACK 则代表该封包为确认封包,亦即是回应封包!
- 什么是三向交握?在哪一种封包格式上面才会有三向交握?
使用 TCP 封包才会有三向交握。TCP 封包的三向交握是一个确认封包正确性的重要步骤,通过 SYN, SYN/ACK,
ACK 三个封包的确认无误后,才能够建立联机。至于 UDP 封包则没有三向交握喔!
- 试说明何谓有网管?无网管的 switch ?此外,这些 switch 的硬件应算在 OSI 七层协议的第几层?
有网管者,会在 switch 内部加入其他的小型 OS,藉以控管 IP 或 MAC 的流通;
通常基础的 switch 仅达控管 MAC ,故为 OSI 第二层(数据链结层)
- 为何 ISP 有时候会谈到『申请固定 8 个 IP ,其中只有 5 个可以用』,你觉得问题出在哪里?
如果以网域的观念来看,他的 netmask 会是多少?
因为如果是一个网域的话,那么八个 IP 前后(Host_ID 全为 0 与 1 的条件)为 Network 及 Broadcast ,
加上一个在 ISP 处的 Gateway ,所以仅有 5 个可以用。因为有 8 个 IP ,所以其 netmask 后八 bits 为 11111000
,故为 255.255.255.248。
- Internet 协议中共包含 "Network Access Layer", "Internet Layer", "Transport Layer", "Application Layer",
请将这四层与 OSI 七层协议的内容进行连结 (自行上网查询相关文章说明);
Network Access Layer: 涵盖 Data-Link 及 Physical Layer
Internet Layer: 也是 Network Layer
Transport Layer: 也是 Transport Layer
Application Layer: 涵盖 Application Layer, Persentatin Layer, Session Layer.
- 请自行上网查询关于 NetBIOS 这个通讯协议的相关理论基础,并请说明 NetBIOS 是否可以跨路由?
- 什么是 Socket pair ?包含哪些基本数据?
由 IP 封包的 IP address 与 TCP 封包的 port number 达成,分别为目的端的 IP/port 与本地端的 IP/port。
- IP 有一段 A Class 的网段分给系统做为测试用,请问该网段为?设定的名称为?
127.0.0.0/8, loopback
- ICMP 这个协议最主要的目的为?同时做为『响应』的类别为第几类?
做为网络检测之用,为第 8 类 (echo request)
- IP 封包表头有个 TTL 的标志,请问该标志的基本说明为何?其数据有何特性?
为该封包的存活时间,该时间每经过一个 node 都会减少一,当 TTL 为 0 时,该封包会被路由器所丢弃。
该数据最大为 255。
- 在 Linux 当中,如何查询每个 port number 对于服务的对应 (filename)
/etc/services 档案中有纪录
- 什么是星形联机?优点为何?
利用一 hub/switch 链接所有的网络设备的一种联机方式,最大的好处是,每个『网络设备与 switch 之间』都是独立的,
所以所以每个主机故障时均不会影响其他主机的联机。
- 请说明 CSMA/CD 的运作原理?
发送流程
- 主机欲使用网络时,会先监听网络,若网络没有被使用时,才会准备传送,否则继续监听;
- 当数据传送钟,发现有碰撞情况时,则会重新监听网络,并且重新发送一次该封包;
- 若重复发生碰撞 16 次,则网络会瘫痪;
接收流程
- 主机如果没有在传送数据,则会监听网络,并且主动在接收的状态下;
- 若接收到一个封包,并且该表头所载 MAC 为本身的网卡卡号,则开始接收该封包,否则将该封包丢弃;
- 接收过程当中如果发生封包碰撞,则会通知原发送主机碰撞的数据;
- 封包接收完毕后,会以 MAC 表头所载长度同时分析本封包长度,若发生问题,则会通知对方重新传送。
2.8 参考数据与延伸阅读
特别感谢:
本文在 2002/07 发出之后,收到相当多朋友的关心,也从而发现了自己误会的一些基础的网络理论,真的是感谢好朋友
Netman 兄与 ZMAN 兄的指导!这篇短文在第二版时 (2003/08/03) 做了相当大幅度的修订,与原来的文章
(上次更新日期 2002/09) 已经有一定程度的差异了,第三版又针对整个内容与阅读顺序进行调整
(2010/08),希望网友们如果有时间的话,能够再次的阅读,以厘清一些基本概念喔!
|
|