zoukankan      html  css  js  c++  java
  • 网络知识小结

    电脑A----B 通讯,需要一根网线;

    电脑A----B----C 两两通信,需要3根网线连成圈;

    电脑 A----B----C ---D ---E ......  需要无数网线,你的笔记本电脑能插这么多线么?你是蜘蛛侠么?

    >>>>>集线器

            集线器仅是无脑将电信号发到所有出口(广播)。不作任何处理。物理层

            机器们怎么知道是发给自己的? 用全局唯一标识MAC地址。不是自己的就丢掉。

    >>>>>交换机

             集线器无脑广播,能不能精确致导?发明了交换机。

             交换机只发给目标mac,不广播了! 数据链路层

             交换机原理:内部维护一张mac地址表mac地址 + 端口号)。这个mac地址表最开始是空的!

                               如何建立?第一次是发给所有端口(所有机器),某台机器确认是发给自己的包,于是响应。

                               不断这个过程,最终将mac地址表建立完毕。

             用这个组成的小范围网络,就叫以太网

             随着机器越来越多,交换机的端口不够用!!可以将多个交换机连接起来。可以支持几百台计算机

    >>>>>>路由器

            有独立mac地址的设备,可以将数据包做一次转发,网络层

            注意!路由器的每个端口,都有独立的mac地址

            mac地址出现了局限(48位,前24位是网络硬件制造商的编号。后24位是该厂家自己分配的系列号。具有唯一性),子网需要统一买一个制造商的设备,不方便。

            ip地址诞生!ip地址是可变的!

            路由器怎样工作?

            A 给 C发数据,怎么知道是否要通过路由器转发呢?答:子网

            如果源ip和目的ip是一个子网,直接将数据包通过交换机发过去。否则交给路由器处理。子网掩码是干嘛的?源ip和目的ip分别和这个子网掩码运行与运算,相等则是在一个子网。

                    A电脑:192.168.0.1 & 255.255.255.0 = 192.168.0.0

                    B电脑:192.168.0.2 & 255.255.255.0 = 192.168.0.0

                    C电脑:192.168.1.1 & 255.255.255.0 = 192.168.1.0 

                    D电脑:192.168.1.2 & 255.255.255.0 = 192.168.1.0

             可以知道 A和B是一个子网,C D是一个子网。

             A怎么知道哪个设备是路由器??? A会把包发给默认网关!这个默认网关是A在自己电脑里配置的一个ip地址

             路由器如何知道C在哪里??答:路由表

          

  • 相关阅读:
    学习ASP.NET MVC3(5) Controller
    关于测试
    [JAVA SE] Java反射机制
    Windows 8 的软件开发架构
    Servlet生命周期与工作原理
    展望未来,总结过去10年的程序员生涯,给程序员小弟弟小妹妹们的一些总结性忠告(转载)
    JAVA小游戏代码(剪刀石头布)
    [JAVA SE] JSP中pageEncoding和charset区别,中文乱码解决方案
    我是工程师,不是编译器
    自己对三层架构理论的理解
  • 原文地址:https://www.cnblogs.com/yuzhaoblog/p/14487166.html
Copyright © 2011-2022 走看看