- 1、本文档共94页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
AN833
Microchip TCP/IP 协议栈
作者: Nilesh Rajbharti 此协议栈用 C 语言编写,可使用 Microchip C18 和
Hi-Tech PICC 18 编译器。根据所使用的编译器,源文
Microchip Technology Inc.
件会自动进行必要的更改。Microchip TCP/IP 协议栈被
设计为只在 Microchip 的 PIC18 系列单片机上运行。此
简介 外,目前该协议栈专用于在Microchip 的PICDEM.netTM
在 Microchip 单片机上实现 TCP/IP (传输控制协议/ 网 因特网 / 以太网演示板上运行。但是,可以十分容易地
际协议)不需要任何创新之举。感兴趣的开发人员可以 修改使之运行在装有 PIC18 单片机的任何硬件上。
很容易找到许多 Microchip 产品的商业和非商业的
TCP/IP 实现方案。本应用笔记详细说明了 Microchip 公 图 1: TCP/IP 参考模型
司自己免费提供的 TCP/IP 协议栈。
Microchip TCP/IP 协议栈是一套程序,它服务于标准
的、基于 TCP/IP 的应用程序 (HTTP 服务器或邮件客 应用层
户机等),或者使用在定制的、基于 TCP/IP 的应用程序
中。为了更好地说明这一点,在本文档的末尾描述了一
个完整的 HTTP 服务器应用程序,同时给出了协议栈的
源代码。
传输层
Microchip TCP/IP 协议栈是按照模块化方式实现的,它
所有的服务创建了高度抽象的协议层。潜在用户使用时
不需要知道 TCP/IP 规范的所有复杂细节。实际上,只
对实现 HTTP 服务器应用程序感兴趣的用户并不需要知
晓任何有关 TCP/IP 的具体知识。(关于 HTTP 服务器 网络互连层
的具体信息请参见从第 77 页开始的部分。)
本应用笔记并没有深入讨论 TCP/IP 协议。建议对该协
议细节感兴趣的用户阅读 RFC (Request For
Comment )文档。在本文档的末尾可以找到一部分主要
RFC 编号列表。 主机到网络层
协议栈架构
许多 TCP/IP 的实现方案都遵循了称为“TCP/IP 参考模
型”的软件架构。基于此模型的软件被分成多层,一层
一层地堆叠(故称为“TCP/IP 协议栈”),并且每层接
受来自该层下面的一层或多层的服务。图 1 中显示了
TCP/IP 协议栈模型的一个简化版本。
根据规范,许多 TCP/IP 层都是“活动的”,这意味着
不仅在被请求服务时,而且在像超时或新包到达这样的
事件发生时,它们都会作出反应。带有大量数据存储器
和程序存储器的系统可以十分容易地满足这些要求。多
任务操作系统可以提供额外工具,帮助程序实现模块
化。但是当系统只使用 8 位单片机以及几百字节的 RAM
和有限的程序存储器时,该任务变得十分困难。此外,
如果不能访问一个多任务操作系统,用户必须特别注意
要保证协议栈独立于主应用程序。集成在主应用程序中
的 TCP/IP 协议栈实现起来相对容易些,并且节省存储
空间。但是当集成越来越多的新应用程序时,此专用协
议栈可能会产生特殊问题。
2006 Microchip Technology Inc. DS00833B_CN 第1 页
AN833
协议栈层 术。在协同式多任务处理系统中,同时存在多个任务,
文档评论(0)