赞
踩
浏览器是一个具备多种客户端功能的综合性软件,用URL来判断使用其中的哪些功能。
访问WEB服务器用http:
访问FTP用ftp:
解析URL:http:(协议)//(//后面的字符表示服务器的名称)+web服务器名+/+目录名+/+·······+文件名(服务器名后边的东西都可以省略)
使用HTTP协议来访问服务器:
状态码(第一位数字的含义,二三位表示具体的情况)
1XX
2XX
3XX
4XX
5XX
一条请求消息只能写一个URI,如果需要获取多个文件,必须对每个文件单独发送一条请求
IP地址主机号:全0表示整个子网,全1表示向子网上所有设备发送包,就是广播
TCP/IP通过IP地址来确定通信对象
委托操作系统发消息时,要先查好对方的IP地址
发送者发送消息先经过子网中的集线器,转发到距离发送者最近的路由器上
域名不仅长,而且长度不固定,处理长度不固定的数据比处理长度的固定的数据要复杂
通过DNS查询IP地址操作称为域名解析,这是一段包含在操作系统Socket库中的一段程序,
控制流程准移:调用其他程序,使得原本的程序进入暂停状态,被调用的程序开始运行
客户端发送查询消息
DNS
DNS的工作
DNS会从域名与IP地址的对照表中查找相应的记录,并返回IP地址
根域DNS服务器:在运营上使用多台服务器对应一个IP地址(只有13个),表示在域名最后有一个句点(但经常省略不写)
DNS服务器中有缓存功能,会自动记住之前查询过的域名
向操作系统内部的协议栈发出委托时,需要按照指定的顺序来调用Socket库中的程序组件
收发数据:把数据通道想象成一条管道从数据的一端送入管道,在管道另一端被取出
在收发数据之前,需要先建立起来这条管道,管道出入口被称为套接字
收发数据(操作系统协议栈来进行)
1)创建套接字
2)连接到服务器的套接字
调用Socket库中的connect,传递3个参数
描述符
服务器IP地址
端口号
3)收发数据
1)调用write这个程序组件时,指定描述符和发送数据,协议栈将数据发送给服务器
2)服务器执行接收操作,解析收到的数据内容并执行响应的操作,向客户端返回响应信息
3)服务器返回响应信息,调用read组件将接受到的响应信息存放到接收缓存区中
4)断开管道删除套接字
Web使用的HTTP协议规定,web服务器发送完响应信息之后,调用close,主动执行断开操作
协议栈的内部(采用分层结构,上层会向下层分配工作)(右侧是从上到下的顺序)
应用程序
操作系统(协议栈)
3)用TCP和UDP协议收发数据
4)IP协议控制网络包收发操作(其中包括ICMP协议和ARP协议)
驱动程序
硬件
套接字的实体:存放控制信息的内存空间
协议栈根据套接字中记录的控制信息来工作
浏览器调用socket程序组件
1)应用程序调用socket申请创建套接字
2)协议栈分配一个存放套接字的内存空间
3)写入初试状态的控制信息
4)将表示这个
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。