网路基础


网络OSI模型七层:
  物理层:
    定义特性:机械,电器,功能,过程;
    定义接口标准:双绞线,光纤,同轴电缆;
    相关协议:无;
  数据链路层:
    定义帧的开始结束,封装成帧,差错校验,透明传输(防止误认结束帧而数据断裂);
    负责尽力的数据帧的传输,错误即丢,不负责丢失重传以及顺序,点到点的mac地址传输;
    相关协议:ATM,PPP,HDLC;
  网络层:
    端到端的包IP寻址传输,负责尽力发送数据包,不负责丢失重传以及顺序,
    相关协议:IPV4,IPV6;
  传输层:流量控制,可靠传输,udp,tcp;
  会话层:控制会话的开始结束,木马防范等;
  表示层:定义数据格式加密等;
  应用层:http,snmp,ftp,telnet;


网络故障分层排错:
  物理层:网线拔插,数据接收发送,物理介质损毁,
  数据链路层:MAC地址冲突,工作模式协商失败,ADLS欠费,
  网络层:地址冲突,掩码网关错误,无路由,选路错误,
  应用层:应用程序错误,


网络分层安全保证:
  物理层安全:接口shutdown;
  数据链路层安全:ADSL账号密码,划分vlan,端口绑定MAC地址;
  网络层安全:防火墙,ACL;
  应用层安全:应用程序无漏洞;


网络性能指标:
  速率:b/s ,kb/s ,Mb/s ,Gb/s;
  带宽:信道最大承载流量大小;100mbps,1000mbps;
  吞吐量:单位时间内通过某个网络的数据量;
  时延:发送,传播,处理,排队的时间差;
  时延带宽积:时延x带宽;
  往返时间:来回时间周期‘(如ping延迟查看);
  利用率:带宽使用程度;


数据通信基本知识:
  数据(data):运送消息的实体;
  信号(signal):数据的电气或电磁的表现;
  数字信号:参数连续,如比特流(0110010..)之类;
  模拟信号:参数离散,如电磁波,超声波;
  码元(code):拥有时间域的数字波形的基本单位,不同的离散数据的基本波形;
  信道:向一个方向传送信息的媒体,工作模式分为:
    单向通信:单工;
    双向交替通信:半双工;
    双向同时通信:全双工;
  基带信号:基本频带信号,来自信源的信号,通常用于较近的传输(PC到监视器,打印机之类的);
  带通信号:将基带信号进行载波调制后加强到更高频率进行更远的传输防止衰减;
  基本的载波调制方法
    调幅(AM):振幅改变;
    调频(FM):频率改变;
    调相(PM):初始相位波形改变;
  编码方式

    单极性不归零;
    双极性不归零;
    单极性归零;
    双极性归零;
    曼彻斯特编码;

    差分曼彻斯特编码

    

  奈氏准则:无干扰下信道的极限容量有上限;码元的传输速率有上限;
  香农公式:有信号干扰的情况下,无差错传输速率:C=W log2(1+S/N) b/s;
  ps:S为信道内信号平均功率;N为信道内的高斯噪声功率;S/N即为信噪比;


物理层传输介质:
  无屏蔽双绞线
  屏蔽双绞线
  同轴电缆
  单模光纤
  多模光纤
非导向传输媒体:无线传输,电磁波,微波等;
集线器(HUB):无导向传输能力,产生巨大冲突域;
ps:网线
  直通线:不同类设备之间一般用直通线
    白橙,橙,白绿,蓝,白蓝,绿,白棕,棕色(568B);两头一致;
      用于PCx交换机/集线器,路由器x交换机/集线器;
  交叉线:同类设备之间一般用交叉线;
    白橙,橙,白绿,蓝,白蓝,绿,白棕,棕色(568B);
    白绿,绿,白橙,蓝,白蓝,橙,白棕,棕色(568A);两头不一致;
      用于PCxPC,交x交,路x路,集x交,路xPC;(集线器同交换机为同级,路由器同PC同级);


宽带接入技术:
  ADSL:利用电话线传输数据,流量不对称,
  HFC:有线电视线路传输,光纤同轴混合网;


数据链路层的信道模式:
  点到点信道
    ppp协议,HDLC协议
      对比:ppp协议更通用,尽管HDLC更安全,但是链路层出错可能性较少不必要使用;
      ppp协议简述

          简单,MTU,网络地址协商 ,数据压缩协商,多类型链路 检查链接状态,封帧透传差检           由三部分组成:NPC(网络控制),LPC(链路控制),PPP(数据封装);

          认证方法两种:PAP(两次握手),CHAP(三次握手);
  广播信道:信道共享通用,CSMA/CD协议;
    静态划分信道:频分,时分,波分,码分;(较麻烦)
    多点接入:随机接入(目前全网都是这种),受控接入;
    CSMA/CD:带碰撞检测载波监听多路访问协议;
      多点接入:计算机多台链接一根总线;
      载波监听:发数据之前要检测是否有信号在发送是否占线;
      碰撞检测:一边发数据一边检测信道的电压大小;


以太网:不可靠交付(尽最大努力交付);要求无差错接收,不纠错,错了就丢,然后要求重传;
  标准:DIX Ethernet V2以及IEEE定义802.3都可以作为标准
    ps:只要满足能载波监听的多路访问(CSMA/CD)都可以作为以太网;
  子层
    LLC:逻辑链路控制子层(目前大部分厂商不添加在网卡上)
    MAC:媒体接入控制子层;
  底层标准
    高速以太网:速率达到100Mb/s;可以进行全双工无冲突(不使用CSMA/CD协议),且帧间隔从9.6μs降低到0.96μs;
    吉比特以太网:速度达到1Gb/s,向下兼容百兆十兆,基于光纤组网;
    10Base-T:10兆,base数字信号,T5类双绞线;一般不超过100m;
    100Base-FX:FX光纤;
    100Base-T4:用4对5类线;
    1000Base-SX:SX短波长,距离275,或550;
    1000Base-LX:LX长波长,距离550或5000;
    1000Base-T:4对5类线;
  MAC:48位,16进制表示,前3字节(前24位)厂家固定;
    ps:windows看设备mac,命令行内ipconfig /all,
  MAC帧格式:不小于64字节,固定字节为18,IP报文数据大小为46-1500字节(不足46的话要凑足);
  帧间最小间隔:9.6μs(微秒),空闲后要等9.6μs才可以再发数据,为保证缓存清理;

    

  FCS:校验和;计算不正确会丢弃;
  类型:代表封装数据的协议格式(如ip包为0x0800);


扩展优化以太网
  距离扩展:电信号转换为光信号(光模块,光转电模块),利用光纤来传输;
  数量扩展

    集线器级联(冲突域扩大,效率降低);

    网桥,交换机(带宽独享,安全,能自行学习记录MAC地址表,按表转发),路由器;


网络通信的模型:

传数据前的准备:
发送端:

应用程序准备文件→
传输层分段并编号→
网络层添加目标IP地址,源IP地址→
数据链路层根据自己的掩码,判断自己所在网段以及目的地址的网段,
如果同网段,ARP广播请求目标的MAC地址,添加源MAC,目标MAC后转发;
如果异网段,ARP广播请求网关的MAC地址,添加源MAC,路由器MAC后转发;

数据传输过程和接收:


ARP协议:
ARP欺骗:
源主机对未知主机请求MAC地址时,发出广播,黑客电脑接收到后模拟目标主机发送一份ARP回应消息,并将目标主机的MAC地址换成自己的,这样对目标主机的流量会发送到黑客主机,相反流程操作可以让目标主机对源主机的流量也引流到黑客主机。这样实现了黑客主机对源主机个目标主机的流量监控和转发,甚至断流;
若欺骗网关地址的话,可以控制整网段的流量来限制网络的流量;
  ps:windows上可以通过arp -a查看arp的解析情况来杜绝arp欺骗;
    arp -s可以添加静态arp表象,通过修复网卡可以清除arp静态条目;


ICMP协议
  ping命令
    time:局域网的延迟最好小于10ms;
    TTL:存活时间;
      ps:默认系统发送TTL:linux: 64,windows:128,Unix:255
  参数:放前放后都一样;
    -t 一直发送请求;
    -a 带原地址的ping;
    -l 指定包的大小发送请求;
    -i 指定ttl;
      ps:可以检测数据吧的途径路由器;


ip地址分类:

  A类地址:0x... 1.0.0.0---126.255.255.255 255.0.0.0 16000000
  B类地址:1x... 128.1.0.0---191.254.255.255 255.255.0.0 60000
  C类地址:10x... 192.0.1.0---233.255.254.255 255.255.255.0 254
  D类地址:11x... 224.0.0.0---239.255.255.255 225.255.255.0 254
  E类地址:111x... 预留
    ps:特殊IP地址,用于局域网;
      A类地址:10.0.0.0~10.255.255.255
      B类地址:172.16.0.0~172.31.255.255
      C类地址:192.168.0.0~192.168.255.255


掩码计算方式
  2 4 8 16
  -1
  1=1,11=3,111=7,1111=15
  24 0000 0000   0
  25 1000 0000   128
  26 1100 0000   128+64=192
  27 1110 0000   128+64+32=224
  28 1111 0000   255-15=240
  29 1111 1000   255-7=248
  30 1111 1100   255-3=252
  31 1111 1110   255-1=254
  32 1111 1111   255
  VLSM:变长子网掩码,掩码右移,标准网格分割更小网络;
  CIDR:无类域间路由,路由汇聚,掩码左移,标准网格合成更大网络;


子网主机算法
172.168.34.56/20,一共划分为了多少个子网,各子网可以包含多少台主机。
172.168.34.56是一个B类地址,B类地址用16位表示网络ID,题目中20位表示网络ID,则子网位数为4位,那么子网就有16个(即从0000、0001到1111的16种变化)。
由于IP地址是32位,用20位表示网络ID,则主机ID的位数为12位,则每个子网可以包含2^12-2个IP地址,即可以包含4094个IP地址。
注意:为什么计算IP地址时要减2,而计算子网数目时不减2呢?IP地址减2的原因是主机ID不能全为0也不能全为1;子网就不存在这个问题。


路由汇聚算法:
192.168.9.0/24 192.168.10.0/24 192.168.11.0/24 192.168.12.0/24 192.168.13.0/24
192.168.14.0/24 192.168.15.0/24 汇总以上路由条目
192.168.00001 001.0
192.168.00001 010.0
192.168.00001 011.0
192.168.00001 100.0
192.168.00001 101.0
192.168.00001 110.0
192.168.00001 111.0
192.168.00001 000.0/21 即 192.168.8.0/21

day2 网络基础的更多相关文章

  1. 前端学HTTP之网络基础

    × 目录 [1]网络 [2]OSI [3]TCP/IP 前面的话 HTTP协议对于前端工程师是非常重要的.我们在浏览网站时,访问的每一个WEB页面都需要使用HTTP协议实现.如果不了解HTTP协议,就 ...

  2. 开发人员必读openstack网络基础

    云计算中的网络非常复杂,需要对网络的基础理论有一定的认识和了解,转载网上针对openstack中涉及到网络概念的文章 开发人员必读openstack网络基础1:什么是L2.L3 开发人员必读opens ...

  3. iOS网络基础知识

    iOS网络基础知识 1.一次HTTP请求的完整过程 (1)浏览器或应用发起Http请求,请求包含Http请求Http(请求),地址(url),协议(Http1.1)请求为头部 (2)web服务器接收到 ...

  4. 网络基础:NetBIOS

    网络基础小补. 利用 NetBIOS 名称与其他计算机通信 网络中的计算机之间必须知道IP地址后才能相互通信.但对人来说IP难以记忆,NetBIOS计算机名称比较容易记忆.当计算机使用 NetBIOS ...

  5. JAVA基础知识之网络编程——-网络基础(Java的http get和post请求,多线程下载)

    本文主要介绍java.net下为网络编程提供的一些基础包,InetAddress代表一个IP协议对象,可以用来获取IP地址,Host name之类的信息.URL和URLConnect可以用来访问web ...

  6. 网络基础知识、ASP.NET 核心知识(1)*

    为什么要写网络? 我原本的计划是这样的,连续两天梳理ASP.NET开发的核心知识.说到这呢,有人问了.“不是说好了做ASP.NET笔记吗?为啥要写网络基础知识?是不是傻?” 原因是这样的.作为网站开发 ...

  7. Day2 - Python基础2 列表、字典、集合

    Python之路,Day2 - Python基础2   本节内容 列表.元组操作 字符串操作 字典操作 集合操作 文件操作 字符编码与转码 1. 列表.元组操作 列表是我们最以后最常用的数据类型之一, ...

  8. Java 网络编程(一) 网络基础知识

    链接地址:http://www.cnblogs.com/mengdd/archive/2013/03/09/2951826.html 网络基础知识 网络编程的目的:直接或间接地通过网络协议与其他计算机 ...

  9. Linux网络基础配置

    这是看itercast视频的笔记 Linux网络基础配置 以太网连接 在Linux中,以太网接口被命令为:eth0, eth1等, 0,1代表网卡编号 通过lspci命令可以查看网上硬件信息(如果是u ...

随机推荐

  1. pycharm 报错:pycharm please specify a different SDK name

    我在给项目配虚拟环境里的解释器的时候有没有遇到过这个问题的啊,就是一个正常的项目,解释器忽然丢了,解释器是配在虚拟环境里面的,再去选择解释器就一直报这个错,给现有项目添加虚拟环境的时候也是报这个错—— ...

  2. Linux常用软件启动、停止、重启命令

    一.PHP 启动命令: /usr/local/php5/sbin/php-fpm 停止命令: pkill php-fpm 二.MySQL 启动命令: /etc/init.d/mysqld start ...

  3. ubuntu中搭建svn服务器步骤

    1.安装软件包: sudo apt-get install subversion 2.建立相关文件夹(这里svn放在home文件夹中) cd /home sudo mkdir svn cd /home ...

  4. Mysql 中的MVCC原理,undo日志的依赖

    一. MVCC 原理了解   原文点击:MVCC原理浅析 读锁: 也叫共享锁.S锁,若事务T对数据对象A加上S锁,则事务T可以读A但不能修改A,其他事务只能再对A加S锁,而不能加X锁,直到T释放A上的 ...

  5. MySql数据库连接池专题

    MySql数据库连接池专题 - aspirant - 博客园https://www.cnblogs.com/aspirant/p/6747238.html

  6. Jenkins redeploy artifacts

    jenkins redeploy artifacts 按钮 - 开源中国https://www.oschina.net/question/3045293_2247829 Jenkins 构建失败后通过 ...

  7. mybatis出现NoSuchMethodException异常

    今天在idea中调试项目(ssm搭建的项目)的时候,mybatis突然出现了NoSuchMethodException异常,具体的异常时: java.lang.NoSuchMethodExceptio ...

  8. 网络编程--使用TCP协议发送接收数据

    package com.zhangxueliang.tcp; import java.io.IOException; import java.io.OutputStream; import java. ...

  9. spring AOP源码分析(二)

    现在,我们将对代理对象的生成过程进行分析. 在springAOP源码分析(一)的例子中,将会生成哪些对象呢? 可以看到将会生成六个对象,对应的beanName分别是: userDao:目标对象 log ...

  10. VSC软件快捷键

    Shift + Alt + F  格式化 Ctrl+Shift+P, F1显示命令面板 Ctrl+P快速打开,进入File… Ctrl + Shift + N新窗口/实例 Ctrl + Shift + ...