Adam Taylor玩转MicroZed系列,第79部分

在本系列博客的前两部分中,我们研究了带有zynq soc ps(处理器系统)的以太网mac(介质访问控制层),包括深入探讨了一个mac使用范例。以太网mac是一个基础的构建模块,它允许我们实现一个ip栈,然后因此给我们的工程创建联网条件。
该ip协议栈,有时候称为tcp/ip协议栈,因为两者总是出现在一起的,是一系列叠加在以太网数据帧顶端的协议。这些协议允许应用基于网络来通信。ip协议栈因而包含一系列由osi协议模型划分的不同协议。如果我们想要解析一个ip协议栈,我们需要找到下列协议:
第一层——物理层:使用zynq soc的时候,一个外部的物理层设备和一个合适的互连媒体(如rj45电缆或光纤)提供该层。
第二层——以太网-数据链路层:由带有ps的zynq soc mac提供
第三层——ip-网络层-因特网协议:提供网络路由和寻址层。可以使ipv4或者ipv6。
第四层——tcp-传输层-传输控制协议:经常简称为tcp。
第五层——应用层:应用停留在该层,可以使html,smtp,ftp或者其它用户应用。3
同其它概念一样,最好可视地展示iso协议栈,如下图所示:
我们已经详细讨论了数据链路层。然而我们还没有涉及tcp或ip的诸多细节,因此我将尝试提供一个简单的介绍。
从最高层开始,tcp协议给应用层提供可靠的、差错保护的连接。tcp确认每一个接收帧来保证可靠接收。该协议也使用序列号来保证应用层传输的数据以正确的格式传送到接收的应用。该协议中的数据校正确保没有任何差错。
端口的概念是用来决定数据传输到那个应用中去。该方案允许多个应用在连接中使用相同的协议来传输数据,而没有任何冲突。然后,tcp并不提供网络路由;它并不保证数据在确切的网络节点到达确切的端口。把数据送到正确地方是网络层的主要作用,该层实现英特网协议即ip。
ip地址的格式大家都清楚。例如192.168.0.1是个ip地址。当前ip有两种版本:ipv4和ipv6。ipv6寻址是最新的改动,为了解决ipv4耗尽的问题,证明了tcp/ip毋庸置疑的成功。
我在该系列中已经写了好几篇文章了,ip协议栈和tcp/ip的详细解释将需要好几篇博客。(如果你没注意到,我们现在是第79部分。)ip协议栈是一个非常复杂的主题。然而,我认为在我们开始使用这些协议栈之前,有必要在接下来的博客中介绍他们的基本含义。访问 获取更多ip协议栈的细节。
由于tcp/ip协议栈的固有复杂性,我们有一系列预创建的协议栈库可用。在下面几篇博客中我们要用到的ip协议栈是轻量级ip协议栈(lwip),我们创建bsp的时候可以包含和配置该库。

将无人机群+电子围栏应用于高速公路春运交通安全管理工作中
vivo Jovi InCar迎来“再进化”,持续聚焦智能车载生态
用于无线电通信的曼彻斯特数据编码
奥比中光举办安防行业沙龙 3D视觉引领安防进入新视界
《基于“矿板”低成本学习Zynq系列》之五-XADC改造与测试
Adam Taylor玩转MicroZed系列,第79部分
康佳PS300移动固态硬盘,不会让你失望
近零时间的 Z-Wave:智能家居网络的两种预认证解决方案
MES系统最全介绍来了,企业必看好文值得收藏备用
解读5G将为产业互联网及普通消费者带来的巨大变化!
有三成Android 用户将考虑用iPhone12系列
简普科技第三季度营收4.44亿元 营销费用占比大幅降低
什么是Ad hoc network
如何在 Ubuntu 和其他 Linux 发行版中创建照片幻灯片
Cambashi谈工业物联网的六大层面
瑞可达拟IPO 目前已恢复审查
中软国际解放号精彩亮相「全球智慧城市大会 · 长沙」
电机缺相的原因及排查
高合HiPhi X宣布在北京车展前全球首发上市
东芝电子开始量产M3H组21款新微控制器