以前都在学习Internet的历史,从这周开始,进入到了Internet技术的学习。
数组
80年代以前,主流网络的仍是Store and Forward Networking(存储转发网络),可是因为其在数据处理方面延时较大,没法应用于条件严苛的军事领域,故军方出力研究出了ARPANET——一个典型的packet switch network(分组交换网络)。网络
ARPANET给出了一个不同的网络:Shared Network——把一大段信息分红许多个packets(数据包),利用路由器作短时间短距离的数据传输,多个路由器接连负责将收到的数据包传送给下一个路由器,hop依然存在,路由器之间的不断转发最终让数据汇聚到目的地。ide
Shared Network上的数据须要在路由器与路由器之间不停的Hop,为了简化和管理,业界提出了分为四层的Layered Network Model(网络分层模型),随之在各层上用协议(Protocol)来约束层与层之间要如何协同工做,简化过程。学习
Link Layer(链路层)是协议的第一层。因为是分层模型,所以在这层上,只考虑物理层面上实现传输数据便可。物理的传输介质,若有线、无线传输、光缆等,均可以看作是一个Link。spa
Ethernet(以太网)能够说是目前应用最为普遍的Link Layer,硬件制造商在制造带有以太网或者无线适配器的电子器件时,都会用六组两两结合的字符去标识这些硬件,这其实属于一种物理地址(Mac地址),硬件之间正是经过地址来识别。blog
当涉及到共享的问题时,必然须要一个与之相对应的冲突解决方案,以太网采用的则是CSMA/CD(Carrier Sense Multiple Access/Collision Detection,载波监听多路访问及冲突检测)。设备在发送数据前会对信道进行Listen(监听),当没有其余正在传输的数据时,才能够进行传输,不然在某个周期内将会一直持续监听。索引
Internetwork Layer(网络层)须要关心的是多个Link的链接问题,这是分层模型带来的好处。ip
与前面的Mac地址不一样,IP地址不是与硬件有关的且一成不变的,物理地址在某个硬件被制造时就由制造商决定了,IP地址是全球性的,当你到了其余地方IP地址就会随之发生改变。路由
IP地址(IPv4)格式是32bits的,由四个小数点分隔,每组都由0 ~ 255(8bits)的二进制数组成。IP地址分为前缀网络号和后缀主机号,前者用子网掩码来表示,用于表示IP地址从属的网络,后者指明网络中的具体主机号。数据在网络传输过程当中会先根据网络号找到指定网络,再根据主机号索引到目标主机。it
Router Tables(路由表)是路由器等网络设备上存储的一张动态更新的信息表,路由表中存放了发送源和目的地的地址,能够根据目的地的ip地址决定了数据该往哪一个方向传递,路由表中还包含了相邻链路的带宽状况,智能选择路径以免拥堵。
DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)是一个局域网的网络协议,在接收申请以后,能够为新连入网络的主机分配一个IP地址。例如当咱们在咖啡厅、在家与在工做单位分别链接网络时,其实分配的IP地址是不一样的,可是咱们在接入网络的时候却没有由于地址不一样而被拒绝,这都归功于DHCP。
若是为全部机构的全部电脑都分配一个真实存在的IP地址,那么IP地址将会很紧缺(IPv4状况下是2的32次方个),因此出现了Network Address Translation技术。
NAT(Network Address Translation,网络地址转换)技术可以使专用网内部已分配的本地IP地址与因特网上的主机进行通讯,这种经过使用少许的公有IP地址表明较多的私有IP地址的方式,有助于减缓IP地址枯竭的状况。不过NAT分配的只在内部网络使用的虚拟IP地址,不能直接访问因特网,只有经过ISP(Internet Service Provider,互联网服务提供商)转换为real global routable address,才能与因特网传输数据。
TTL(Time to Live,存活时间)是每一个IP数据包自带的一个用来表示生存时间的字节,最大值为255。TTL每通过一个路由器减小1,减到零以后就丢弃数据包,防止无限hop致使死循环形成网络堵塞。