网络通信实验(2)TCP/IP LWIP 简介
TCP/IP 简介
TCP/IP 中文名为传输控制协议/因特网互联协议,又名网络通讯协议,是 Internet 最基本的
协议、 Internet 国际互联网络的基础,由网络层的 IP 协议和传输层的 TCP 协议组成。 TCP/IP 定
义了电子设备如何连入因特网,以及数据如何在它们之间传输的标准。协议采用了 4 层的层级
结构,每一层都呼叫它的下一层所提供的协议来完成自己的需求。通俗而言: TCP 负责发现传
输的问题,一有问题就发出信号,要求重新传输,直到所有数据安全正确地传输到目的地。而
IP 是给因特网的每一台联网设备规定一个地址。
TCP/IP 协议不是 TCP 和 IP 这两个协议的合称,而是指因特网整个 TCP/IP 协议族。 从协议
分层模型方面来讲, TCP/IP 由四个层次组成:网络接口层、网络层、传输层、应用层。 OSI 是
传统的开放式系统互连参考模型,该模型将 TCP/IP 分为七层: 物理层、数据链路层(网络接口
层)、网络层(网络层)、传输层(传输层)、会话层、表示层和应用层(应用层)
PHY 层芯片 LAN8720A 相当于物理层, STM32F407 自带的MAC 层相当于数据链路层,而 LWIP 提供的就是网络层、传输层的功能,应用层是需要用户自己根据自己想要的功能去实现的
LWIP 简介
LWIP是瑞典计算机科学院(SICS)的 Adam Dunkels等开发的一个小型开源的 TCP/IP协议栈,
是 TCP/IP 的一种实现方式。 LWIP 是轻量级 IP 协议,有无操作系统的支持都可以运行, LWIP
实现的重点是在保持 TCP 协议主要功能的基础上减少对 RAM 的占用,它只需十几 KB 的 RAM
和 40K 左右的 ROM 就可以运行,这使 LWIP 协议栈适合在低端的嵌入式系统中使用。
关于LWIP的详细信息大家可以去http://savannah.nongnu.org/projects/lwip/这个网站去查阅,
LWIP 的主要特性如下:
ARP 协议,以太网地址解析协议;
IP 协议,包括 IPv4 和 IPv6,支持 IP 分片与重装,支持多网络接口下数据转发;
ICMP 协议,用于网络调试与维护;
IGMP 协议,用于网络组管理,可以实现多播数据的接收;
UDP 协议,用户数据报协议;
TCP 协议,支持 TCP 拥塞控制, RTT 估计,快速恢复与重传等;
提供三种用户编程接口方式: raw/callback API、 sequential API、 BSD-style socket API;
DNS,域名解析;
SNMP,简单网络管理协议;
DHCP,动态主机配置协议;
AUTOIP, IP 地址自动配置;
PPP,点对点协议,支持 PPPoE
扫码关注微信公众号 “小樊Study”获取更多
QQ群
淘宝店铺