计算机网络学习笔记----互联网分层及协议

最近想了解计算机网络的基本概念,在网上偶然找到一篇教程写得不错.
参考链接:快客网 http://www.cricode.com/2525.html,作者: Jay13
摘下来的笔记如下:
按原作者的理解,互联网可简单分为5层:
应用层–>传输层–>网络层–>链接层–>实体层 ,其中每一层都定了协议(protocol).
下面是每层的详细分析:
一. 实体层:
实体层十分具体可以理解为看得见的线路,比如光缆,电缆,双绞线等连接,它们负责传送0,1的电信号.
二. 链接层:
链接层在实体层上面,实体层的0,1电信号就是由链接层确定的.

  • “以太网”协议 :它作为实体层电信号的分组方式的主导.规定每一组电信号构成一个数据包,叫做“帧(Frame)”
    帧的组成:
    • 标头(Head):它的固定长度为18byte.包含数据说明项(包括)发送者,接受者.
    • 数据(Data):它的长度范围是46~1500byte,包括数据包具体内容.
  • MAC地址:用来区分网卡(电信号上数据包的传送点)的地址,就是标头中发送方与接收方的地址.有趣的是,每块网卡都有一个全世界唯一的MAC地址:长度48个二进制位,用12个16进制表示.
  • 广播传输方式:以太网通过把数据包向子网络所有计算机发送,其他计算机读取包的标头,并且和自己网卡的MAC地址比较,如果一致就接收数据包.
通过数据包,网卡的MAC地址,广播的发送方式,多台计算机就可以在链接层传送数据了.

三.网络层:
由于以太网的广播效率比较低,而且仅仅局限于子网络,我们知道计算机网络由无数子网络构成.

  • 网址: 由于网络层的诞生所以引入了一个新地址,网络地址.所以现在计算机地址包括网络地址和子网络的MAC地址,网址可以帮助确定计算计算机所在子网络,而MAC地址将数据包送到子网络的目标网卡.
  • IP协议: 它规定了网络地址的协议.目前广泛使用IP协议第四版,IvP4,它由32位二进制组成.习惯用4段10进制表示,从0.0.0.0到255.255.255.255.
  • 子网掩码(subnet mask):子网掩码的形式和IP地址一样,表示网络部分为1,表示主机部分为0.不同的IP地址通过和子网掩码的AND运算,如果结果一致,则表明两个IP地址处于同一个子网络.
  • IP数据包:它同样也由标头+数据组成.它们都放进以太网数据包.

    • 标头 :主要包括版本、长度、IP地址等信息.
    • 数据: 部分则是IP数据包的具体内容。
    理论上,一个IP数据包的”数据”部分,最长为65,515字节。前面说过,以太网数据包的”数据”部分,最长只有1500字节。因此,如果IP数据包超过了1500字节,它就需要分割成几个以太网数据包,分开发送了。
  • APR协议:它是一直可以通过IP地址获取子网络内主机的MAC地址的机制,一般可以得知接收方的IP地址(这里可以先视为理所当然- -),因此可以计算对方是否位于同一个子网络.

    • 如果位于同一个子网络,则通过APR协议用IP地址通过前面提到的广播的方式找到对方的MAC地址.
      ARP协议也是发出一个数据包(包含在以太网数据包中),其中包含它所要查询主机的IP地址,在对方的MAC地址这一栏,填的是FF:FF:FF:FF:FF:FF,表示这是一个”广播”地址。它所在子网络的每一台主机,都会收到这个数据包,从中取出IP地址,与自身的IP地址进行比较。如果两者相同,都做出回复,向对方报告自己的MAC地址,否则就丢弃这个包。
      有了 ARP协议之后,我们就可以 得到同一个子网络内的主机MAC地址,可以把数据包发送到任意一台主机之上了
    • 如果两台主机不在同一个子网络,那么上没有办法得到对方的MAC地址,只能把数据包传送到两个子网络连接处的”网关“(gateway),让网关去处理。

    四. 传输层:
    在网络层我们可以在任意两台电脑(主机到主机)传送数据,但是如果再细分到一台电脑上面,QQ消息需要一份数据,发送邮件需要一份数据,.

    也就是说,我们还需要一个参数,表示这个数据包到底供哪个程序(进程)使用。
    传输层的主要功能就是建立”端口到端口”的通信,区别于网络层的”主机到主机”通信.

    • 端口(port):多个不同程序(进程)需要不同数据包的所属参数.每个数据包发到主机特定端口,不同程序就能取到自己需要的数据了.[Unix系统把主机+端口叫做套接字(socket)]. 端口的取值范围为0~65535,其中0~1023为系统占用,用户只能选取大于1023的端口与服务器相应端口联系.
    • UDP协议:由上可知,我们又得引入一个数据包来记录不同的端口,这个数据包需要一个协议叫做UDP协议,它同样包括标头和数据部分.
      “标头”部分主要定义了发出端口和接收端口,”数据”部分就是具体的内容。 然后,把整个UDP数据包放入IP数据包的”数据”部分,而前面说过,IP数据包又是放在以太网数据包之中的.
      ,不过UDP协议虽然简单但是可靠性比较差,它不能得知接收方是否收到.
    • TCP协议:鉴于UDP协议的缺点,我们引入了TCP协议,它和UDP协议都是内嵌在IP数据包的”数据”部分.
      它提高网络可靠性,这个协议非常复杂,但可以近似认为,它就是有确认机制的UDP协议每发出一个数据包都要求确认。如果有一个数据包遗失,就收不到确认,发出方就知道有 必要重发这个数据包了。因此,TCP协议能够确保数据不会遗失。它的缺点是过程复杂、实现困难、消耗较多的资源。

    五. 应用层:
    它规定了应用程序的数据格式,如Email(电子邮件),WWW(网页),FTP(数据)等格式.它的数据放在TCP数据包的数据部分.

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值