网络基础知识HTTP(1) --转载
2015-12-12 20:54
567 查看
为什么要写网络?
作为网站开发人员,你所开发的软件产品最终是要在网络上运行的。这就像一个生产商,要生产供给东北地区的产品,而生产商对东北的天气、地理、人文毫无了解。生产商的产品肯定是不可用的,或者低端的!产品质量不好,那是自然的。产品质量好,那算你点儿高。那么作为ASP.NET开发人员,如果一点不懂http协议、不晓得Ajax、甚至根本不了解JavaScript,效果也是一样的。总之,丰富的知识储备,会为你的软件产品带来更多的品质保障。我们要了解的主要是HTTP协议
关于体系结构
1.OSI、TCP/IP、与五层体系结构
说道网络的体系结构,总共有两个经典的划分方式,分别是OSI七层 和 TCP/IP四层。
1)OSI
OSI的七层协议体系结构、清晰,完整。 但复杂度高,又不实用。
2)TCP/IP
相比的OSI七层的复杂,TCP/IP的四层结构 得到了广泛的应用。
但是从实际角度看,TCP/IP在实际应用中仅使用了上三层。
3)五层体系结构。
TCP/IP 最下层网络接口层,没有什么特别新的具体内容,跟一般的通信链路没有多大差别。
所以在学习的时候采用一种中庸的做法,就是把TCP/IP体系、和OSI体系结合
形成一个从物理层、数据链路层、网际层、运输层到应用层的五层体系结构。
2.对于五层协议、每层的描述
1)物理层
定义了通信设备的 机械、电气、功能归程特性。(当年就是这么背的,我理解的呢就是这样,“方形的插头、插不进去圆形的口。就是定义这样一个标准吗”)
设备: 集线器 (组成一个碰撞域)
2)数据链路层
建立、维护和释放网络实体间的数据链路,这种数据链路对网络变现为一条无误差的信道。(MAC媒介访问层、LLC逻辑链路层)
主要特性记住三点》 1. 封装成帧
2.透明传输
3.差错检测
设备:网桥、有缓存,接受MAC帧。
3)网络层:
属于通信子网,通过网络连接交换传输层实体放出的数据。它解决的是路由选择,网络拥塞,异构网络互联的问题。(发送的是报文)
IP 网际协议
ARP 地址解析协议
RARP 反向地址解析协议
ICMP 网际控制报文协议
IGMP 网际组管理协议
4)传输层
实现发送端和接收端,端到端的数据分组传送,负责保证实现数据包无差错、无丢失和无冗余的传输。 (服务的访问点为端口)
TCP (传输控制协议) 可靠、面向连接、有应答机制
UDP (用户数据报协议)不可靠、无连接、无应答机制
5)应用层
虽然我们是程序开发人员,但是上面基层的协议说的什么呢?实话说跟我们联系不大。到了应用层才跟我们得工作息息相关。
HTTP 超文本传输协议 这个才是我们需要懂的。
FTP 文件传输协议
DHCP 动态主机配置协议
NFS 网络文件系统
Telnet 远程登录协议
DNS 域名系统
SNMP 简单网络管理协议
相关文章推荐
- 残差学习,152层网络,微软夺冠2015 ImageNet计算机视觉识别挑战
- C++对象的内存分布和虚函数表 http://blog.sina.com.cn/s/blog_60e96a410100lirk.html
- windows几个常见网络命令解析:ping, telnet, ssh, ftp/sftp, netstat, tracert, arp
- Android之网络连接状态的判定
- SpringMVC对HTTP报文体的处理
- Android之判断手机连接的网络类型是WIFI还是2G/3G/4G
- 神经网络
- (Fun)*((int*)*(int*)(&b)); http://bbs.csdn.net/topics/320008423
- 操作系统与网络实现 之十二
- 操作系统与网络实现 之十二
- 《TCP/IP作品详细解释2:实现》笔记--Radix树路由表
- 【拔苗计划】——TCP学习笔记之TCP三次握手四次断连
- C++虚函数及虚函数表解析http://www.cnblogs.com/chinazhangjie/archive/2012/07/11/2586535.html
- 用平常语言介绍神经网络
- Xcode7 HTTP不能正常使用的方法
- wmware虚拟网卡 VMnet8 VMnet1未识别网络解决方法
- Granafa http api使用
- 来这里看HTTP服务器状态代码定义
- 服务器架设笔记——httpd插件支持mysql字符集选择
- http://ahua186186.iteye.com/blog/1830180