基于SX单片机实现WebServer和网络协议栈
因为HTTP层的下面是TCP层,也就是说HTTP把TCP作为它的传输协议,所以那两个TCP连接也为WebServer所用。理所当然,TCP API的发送和接收函数也用来实行WebServer的请求和相应命令。
所有的服务器资源都存放在外部的E2PROM中,HTTP使用统一资源定位器来指定返回给客户端的网络资源。统一资源定位器就像一个带有目录的文件路径一样,指定资源的路径和扩展名。SX协议栈并没有像普通的解决方案那样使用一般的文件系统来管理外部存储器中的资源,而是采用了一种称之为智能信息表来解决这个问题。当一个请求到来时,一个8位的无用信息对统一资源定位器进行运算(8位字符加运算),再将得到的数据乘以2,并把这个结果作为一个索引区中的一个值。如果在E2PROM中已经建立了查找表,凭着这个值在E2PROM中去查表,找到相应的资源并返回。用这种方法的好处是可以避免繁琐的字符串的比较和将统一资源定位器直接存放在服务器中。这种文件系统的结构如图6所示。
(2)E2PROM的编程
在WebServer启动以前,要先把资源文件下载到E2PROM中。在这个方案中采用RS232端口从电脑上传输资源文件。下载程序自动从电脑中载入磁盘的目录结构并在E2PROM中创建E2PROM文件系统。
参考文献
1 SX52BD100 Data Sheet. UBICOM Corporation,2000
2 SX52BD100 User Manual. UBICOM Corporation,2000
3 Ethernet SX-Stack Internet Connectivity. UBICOM Corporation,2000
4 Web Server Send Email Client Implementation with Ethernet as the Physical Layer. UBICOM Corporation,2000
评论