第一层(物理层)
    如何用两台电脑构成最小的局域网(LAN)?
    网线的水晶头1、2和3、6脚分别起着收、发信号的作用,随意只要将水晶头做交叉线1-3、2-6交叉法,然后连接两台电脑。除了网线交叉,还要配置两台电脑的IP地址、子网掩码和默认网关。如可以是一个192.168.0.2/24和192.168.0.5/24。
    
    有一个叫Hub,也就是集线器,它有多个口,可以连接多台电脑,它和交换机不同,没有大脑,完全在物理层工作,将收到的每一个字节发到其他端口上。
    
    
第二层(数据链路层)
    使用Hub,因为它采取的是广播的模式。会有几个问题:
        1.谁发的包?谁接收?
        2.大家都在发包是否会混乱?有没有先后规则?
        3.如果发送错误了,如何处理?
        
        
    这便是第二层也即MAC层需要解决的问题。
    
    对于第2个问题,比如有如下三种解决方式:
        1.分多个车道,各走各的。即信道划分。
        2.轮着来,即轮流协议。
        3.先发送,要是很堵,再回去,错过高峰再出。即是随机接入协议。
        
        解决第1个问题:
        使用MAC地址
        这是第二层网络包的格式
        
        有了目标的MAC地址,数据包在链路上广播,MAC的网卡才鞥呢发现,是它的包,收取后,打开IP包,发现IP地址是自己的,再打开TCP包,发现端口是自己。
        
        CRC是循环冗余检测
        
        
        当不知道目标的MAC地址时怎么办呢?使用ARP协议
        
        ARP协议发送的具体的报文就如下
        
        此外本地机器也会进行ARP缓存,但机器不断上下线,IP也可能会变,所有ARP缓存的MAC地址过一段时间就会过期。
        
局域网
 
    hub集线器广播的形式会造成大量的资源浪费,这就用到了交换机,交换机会根据MAC地址依据策略进行转发。交换机会将学习到的MAC和IP地址记下,也就是我们称之为转发表的。
 

5.从物理层到MAC层的更多相关文章

  1. 网络协议 3 - 从物理层到 MAC 层

        在上一篇博文中,我们见证了 IP 地址的诞生,机器一旦有了 IP,就可以在网络的环境里和其他的机器展开沟通了.     今天,我们来认识下 物理层 和 MAC 层.     日常生活中,身为 ...

  2. 网络协议 3 - 物理层 和 MAC 层

    在上一篇博文中,我们见证了 IP 地址的诞生,机器一旦有了 IP,就可以在网络的环境里和其他的机器展开沟通了.     今天,我们来认识下 物理层 和 MAC 层.     日常生活中,身为 90 后 ...

  3. 网络协议学习笔记(二)物理层到MAC层,交换机和VLAN,ICMP与ping原理

    概述 之前网络学习笔记主要讲解了IP的诞生,或者说整个操作系统的诞生,一旦有了IP,就可以在网络的环境里和其他的机器展开沟通了.现在开始给大家讲解关于网络底层的相关知识. 从物理层到MAC层:如何在宿 ...

  4. 5(计算机网络)从物理层到MAC层

    故事就从我的大学宿舍开始讲起吧.作为一个八零后,我要暴露年龄了. 我们宿舍四个人,大一的时候学校不让上网,不给开通网络.但是,宿舍有一个人比较有钱,率先买了一台电脑.那买了电脑干什么呢? 首先,有单机 ...

  5. 第5讲 | 从物理层到MAC层:如何在宿舍里自己组网玩联机游戏?

    第一层(物理层) 水晶头要做交叉线,用的就是所谓的 1-3.2-6 交叉接法. 有一个叫做 Hub 的东西,也就是集线器.这种设备有多个口,可以将宿舍里的多台电脑连接起来.但是,和交换机不同,集线器没 ...

  6. tcp/ip 卷一 读书笔记(2)物理层和链路层网络

    物理层和链路层网络 术语 链路 是一对相邻结点间的物理线路,中间没有任何其他的交换结点. 数据链路 除了物理线路外,还必须有通信协议来控制这些数据的传输. 帧 数据链路层的协议数据单元(PDU) 串行 ...

  7. MAC层作用

    对于无线传感网 MAC,顾名思义,就是介质访问控制,是用来控制无线介质的访问的,由于无线传输是共享空中资源的,必然存在多个无线传感器节点对传输介质的争用,MAC层协议就是用来解决这个问题的,包括冲突的 ...

  8. 802.11 MAC层

    1. 介绍 本文主要介绍了802.11 MAC层 2. 访问机制 CSMA/CA:  Carrier Sense Multiple Access with Collision Avoidance Wi ...

  9. 计算机网络-3-5-以太网MAC层及交换机

    MAC层的硬件地址 在局域网中,硬件地址又称为物理地址或者MAC地址(因为这种地址用在MAC帧中) IEEE 802标准为局域网规定了一种48位(6字节)的全球地址,固化在适配器的ROM中. 如果计算 ...

随机推荐

  1. Linux 下通过mail命令发送邮件

    mail -s "测试"  1968089885@foxmail.com 需要先配置smtp服务器

  2. centos7下的nfs配置

    NFS是Network File System的缩写,即网络文件系统.客户端通过挂载的方式将NFS服务器端共享的数据目录挂载到本地目录下. nfs为什么需要RPC?因为NFS支持的功能很多,不同功能会 ...

  3. mysql高效导入导出load data [infile][outfile]用法

    一.MySQL高效导入数据的方法load data infile load data infile语句从一个文本文件中以很高的速度读入一个表中.使用这个命令之前,mysqld进程(服务)必须已经在运行 ...

  4. C# Windows服务相关

    代码及注释 ServiceController sc = new ServiceController("gupdatem"); sc.Stop();//停止服务 sc.Start( ...

  5. php的生命周期的概述

    1. PHP是随着WEB服务器(apache)的启动而运行的: 2. PHP通过mod_php5.so()模块和服务器(apache)相连 3. PHP总共有三个模块:内核.Zend引擎.以及扩展层: ...

  6. Storm设计思想

  7. tzfile - 时区信息

    SYNOPSIS #include <tzfile.h> DESCRIPTION 时区信息文件被 tzset(3) 使用, 其开头为特征字符"TZif", 以此标示该文 ...

  8. 保护Laravel .env文件,防止直接访问

    web服务器: Apache 服务器系统: Ubuntu 14.04 如果不是vhost的形式部署在服务器上,可能是可以通过 http://www.example.com/.env 查看到larave ...

  9. VS项目种类GUID

    在VS里新建的类库项目,在添加新建项时往往找不到模板.比如想新建一个WPF的资源词典文件,VS认为该类库项目不是WPF类型,就没有列出新建资源词典的模板.解决办法是在csproj文件的<Prop ...

  10. 【转载】查看Linux进程CPU过高具体的线程堆栈(不中断程序)

    具体的命令经常忘记,毕竟用的不是很多.为了避免去找备份一下 1.TOP命令,找到占用CPU最高的进程 $ top top - 20:11:45 up 850 days,  1:18,  3 users ...