嵌入式-计算机网络知识学习-TCP/IP四层协议

一、为什么要有TCP/IP网络协议

       1.同一设备之间进行进程间通信(相对于操作系统而言如Linux,RTOS系统进程也是同样),有如下方式:管道、消息队列、共享内存、信号等方式

        2.对于不在同一设备上的进程间通信,就需要网络通信,而设备有很多种,为了能同时兼容多种设备就需要有一个统一的通信方式。----网络协议的诞生。

        3.协议的三个关键要素:语法(规定说话的方式如我们一句话有主谓宾一样)

                                               语义(这句话的意思)

                                               时序(对方在听的时候说以及对方一秒能听懂多少)

二、OSI模型--分层模型(了解)

        OSI模型展示了两个不同系统如何互相通信,且不改变底层硬件和软件的逻辑。

        OSI七层模型:

发送和接收:发送方从第7层应用层向下到物理层------>接收方从第1层物理层到应用层。

物理层解释:把逐个比特的数据发送到发送方。

                      要求:发送设备和接收设备的比特率相同且时钟也要同步。

                      传输方式:单工、半双工、全双工

                      线路配置:点对点配置、多点配置

数据链路层解释:1.对下  把物理层转换为可靠链路    2.对上   把网络层收到的比特流划分为可处                                    理的数据单元(帧)

                             2.负责同一网络上两个系统之间的分组交付

网络层解释:确保每个分组从源点交付到终点

运输层解释:网络层只负责每个分组独立交付,运输层则要确保整个报文原封不动按序到达

                      负责进程到进程的交付

                      有差错控制和流量控制

会话层解释:建立、维持并同步通信的系统之间的交互。

表示层解释:两个系统所交换的信息的语法和语义,将信息从与接收方相关的格式转换为公共的格式

应用层:让用户能够接入网络

三、TCP/IP模型(5层)

1.应用层:如HTTP,FTP,DNS,SMTP等------不关心数据传输问题

                功能:

                为用户提供应用功能。

                传输格式:

                HTTP头+消息体==应用层数据

2.传输层:如TCP和UDP

                TCP保证数据包能可靠的传输给对方----流量控制、超时重传、拥塞控制等 

                UDP只负责发送数据包,不保证数据包能不能抵达对方,但是实时性好,传输效率高。

                功能:

                为应用层提供网络支持。

                传输格式:

                应用传输的数据可能很大,当超过MSS(TCP最大报文段长度)时,就需要将数据包分块(TCP段),当发生错误时,只需传输一个TCP段即可。

                

                通过传输层时会添加TCP头部方便区分应用。

                TCP头部+数据块==TCP段

                传输层并不负责将数据从一个设备传输到另一个设备,只是服务于应用层。 

3.网络层:实际执行传输功能的层(IP协议)

                功能:

                 1. 负责将数据从一个设备传输到另一个设备

                 2.选择路径和节点的选择。

                传输格式:

                  网络层最常使用的是 IP 协议,IP 协议会将传输层的报文作为数据部分,再加上 IP 包头组装成 IP 报文,如果 IP 报文大小超过 MTU(以太网中一般为 1500 字节)就会再次进行分片,得到一个即将发送到网络的 IP 报文。

                  IP头部+TCP段==IP报文(大于MTU切片传输)

                如何找到设备(回答功能1)--寻址功能

                  IPv4引入:1.给对应设备一个号码(IP地址)。2找到这个设备

                        IP地址就分为了两种意义:一个网络号(标识该IP地址时属于哪个子网的)

一个主机号(负责标识同一子网下的主机)。他们通过IP地址和子网掩码计算可得出。

                        将IP地址和子网掩码进行按位与(AND)运算,得出网络号。

                        将子网掩码先取反,然后再与IP地址进行按位与运算得出主机号。

                如何选择路径和节点(回答功能2)--IP协议路由功能

                    两台设备并不是用一条网线连接起来的,而是通过很多网关、路由器、交换机等众多网络设备连接起来的,那么就会形成很多条网络的路径,因此当数据包到达一个网络节点,就需要通过路由算法决定下一步走哪条路径。

路由则是根据「下一个目的地」选择路径。寻址更像在导航,路由更像在操作方向盘

4.网络接口层:(数据链据层+物理层主要为网络层提供「链路级别」传输的服务,负责在以太网、WiFi 这样的底层网络上发送原始数据包,工作在网卡这个层次,使用 MAC 地址来标识网络上的设备。

                        传输格式

                        MAC头部+IP报文==数据帧

                        怎么突然加了一个MAC头:进行以太网通讯要用到MAC地址。

什么是以太网:在一种局域网内,把附近的设备通过WIFI接口,路由器,以太网接口,网线等连接起来,使得他们可以进行通讯的技术。

                        MAC 头部是以太网使用的头部,它包含了接收方和发送方的 MAC 地址等信息,我们可以通过 ARP 协议获取对方的 MAC 地址。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值