码迷,mamicode.com
首页 > 系统相关 > 详细

Linux网络知识学习1---(基础知识:ISO/OSI七层模型和TCP/IP四层模型)

时间:2015-05-15 01:05:50      阅读:295      评论:0      收藏:0      [点我收藏+]

标签:

以下的内容和之后的几篇博客只是比较初级的介绍,想要深入学习的话建议看书《TCP/IP详解 卷1:协议》

1.ISO/OSI七层模型
    下四层是为数据传输服务的,物理层是真正的传输数据的,数据链路层、网络层、传输层主要是写入对应数据的传输信息的
        物理层:比特
            设备之间的比特流的传输、物理接口、电气特性
        数据链路层:帧
            保存的最主要的信息是网卡的 mac 地址,mac 地址负责局域网通信的,发件人和收件人的mac 地址
                mac地址的作用:尽管你是要在互联网中传输数据(貌似需要IP地址就可以了),但是在互联网中传输数据其实是通过在一个又一个的局域网进行依次传递,所以需要mac 地址
            进行错误检测和修正
        网络层:报文
            保存的最主要的信息是 IP 地址,IP 地址是负责外网通信的,发件人和收件人的IP 地址
            选择通路(路由器)
        传输层:TPDU--传输协议数据单元
            确定端口号(IP是寻找互联网中的哪个电脑,端口是寻找电脑中的哪个应用服务)
            确定传输协议是可靠的还是不可靠的(UDP、TCP)
            传输前的错误检测
            流量控制

    为用户提供服务的上三层
        会话层:SPDU--会话协议数据单元
            确定网络数据是否要通过远程会话
                比如你写了一个word文档,在保存之后(表示层完成格式转化……)就会到达会话层,显然判断word文档保存在本地即可,不需要进行网络传递,所以直接交给硬盘进行存储即可
                但是你写了一个邮件,点击发送(表示层完成格式转化……)就会到达会话层,显然判断邮件需要通过网络进行传输,所以就会交给传输层进行处理
        表示层:SPDU--表示协议数据单元
            把你的数据进行数字化表示(把英文/中文/图片/mp3……通过一定的规则翻译成01 格式)
            加密
            压缩
        应用层:APDU--应用协议数据单元
            给用户提供服务的接口


2.TCP/IP四层网络模型
    上面所讲到的ISO/OSI七层模型目前只是一个模型,在实际的网络传输中其实并不是这样使用的,实际的网络传输中使用的其实是TCP/IP四层模型
    网络接口层、网际互连层、传输层、应用层

    TCP/IP模型和ISO/OSI模型的对应(所以各层的功能参考ISO/OSI模型中各层的功能)
        网络接口层:对应物理层、数据链路层
            负责监视数据在主机和网络之间的交换。事实上,TCP/IP本身并没有定义该层的协议,而由参与互连的各个网络使用自己的物理层和数据链路层协议,然后与TCP/IP的网络接入层进行链接
            地址解析协议(ARP)工作在此层,即OSI参考模型的数据链路层:ARP就是将IP地址翻译成mac 地址,因为在整个互联网内传输需要IP 地址,但是在同一个网段之内(局域网)传输数据就不是使用IP 地址,而是需要使用mac 地址。
            例如,在同一个局域网内传输数据,电脑点击发送数据,而发送的目标是我同局域网内的另一台计算机,点击之后数据就会发送到网线上,网线就会把你的请求发送到交换机上,交换机只能识别mac 地址,不认识IP地址
            注意,局域网内部使用交换机,而在局域网之间的连接是通过路由器
            所以还是需要再学习交换机、路由器等网络设备及其作用、原理
        网际互连层:对应网络层
            主要解决主机到主机的通信问题。它所包含的协议设计数据包在整个网络上的逻辑传输。
            该层有三个主要协议:网际协议(IP)、互联网组管理协议(IGMP)、互联网控制报文协议(ICMP)
        传输层:对应传输层
            为应用层实体提供端到端的通信功能,保证了数据包的顺序传送及数据的完整性。
            该层定义了两个主要的协议:传输控制协议(TCP)、用户数据报协议(UDP)。QQ传输使用的就是UDP协议
            还需要深入学习,比如TCP/IP三次握手(为什么要三次握手,搜索“什么是两军问题”,其实三次握手也不能达到绝对可靠,但是相对来说三次已经相当可靠了,如果再握手更多次就太费时间了,太少的话就不能保证足够可靠)
        应用层:对应会话层、表示层、应用层
            为用户提供所需要的各种服务
            例如:FTP、Telnet、DNS、SMTP等
    OSI模型是在协议开发之前设计的,具有通用性。TCP/IP是先有协议集然后建立模型,不适用于非TCP/IP网络

    数据封装的过程
技术分享

Linux网络知识学习1---(基础知识:ISO/OSI七层模型和TCP/IP四层模型)

标签:

原文地址:http://www.cnblogs.com/xumenger/p/4504825.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!