http协议通信原理的问答
1、dns怎么解析?
答:假设一个网站www.tianyik.com的ip是192.168.31.36
浏览器(URL:www.tianyik.com)-->
客户机
hosts文件-->web浏览器(192.168.31.36)
dns解析器缓存-->web浏览器(192.168.31.36)
没有的话-->(进行递归查询)
电信DNS服务器
dns服务器缓存-->客户机
没有的话-->(进行迭代查询)
根服务器--(去找顶级域.com)-->电信dns服务器-->
顶级域-->(去找二级域tianyik.com)-->电信dns服务器-->
二级域-->(www.tianyik.com为192.168.31.36)-->电信dns服务器-->
电信dns服务器(缓存一下)-->客户机(缓存一下)-->浏览器
2、用户怎么访问网站?
答:
浏览器(URL:www.tianyik.com)-->
a、先解析域名(见1),返回客户机ip192.168.31.36
b、发送请求192.168.31.36web服务器
c、服务器返回www.tianyik.com内容。
3、什么样情况会用https? 网银,支付宝
4、写出以下端口对应的服务?
答:
21--ftp
22--ssh
25--smtp(发邮件)
3306--mysql
873--rsync
161--snmp(网管协议)
111--rpc(NFS rpcbind,portmap)门户网站必须要用到的
3389--windows远程桌面mstsc
80--http
443--https
110--pop3
53--dns
5、http服务的请求过程?
答:
客户端--(www.tianyik.com的请求报文)-->web服务器
请求报文:
请求起始行:GET/tools.html HTTP/1.1 ([取tools.html] http版本)
请求首部:
user-agent Mozilla/4.75 [en] (win7;u) 浏览器版本
host:www.tianyik.com 主题头
Accept: text/html,image/gif,image/jpeg 请求内容的类型
Accept-language:en 语言
客户端<--(HTML格式内容、对象、对象类型、对象长度(见6))--web服务器
6、解释请求baidu.com得到的响应报文?
答:
响应起始行:HTTP/1.1 200 OK http版本/状态码
响应首部:(curl -I baidu.com)
Date: Sun, 20 Mar 2016 12:42:22 GMT 访问时间
Server: Apache 服务端的web服务器版本(TENGING,nginx,Microsoft-IIS/7.5)
Last-Modified: Tue, 12 Jan 2010 13:48:00 GMT 最后一次修改时间
ETag: "51-47cf7e6ee8400" 被请求变量的实体值
Accept-Ranges: bytes 可以请求网页实体的一个或者多个子范围字段
Content-Length: 81 传输长度
Cache-Control: max-age=86400 缓存控制
Expires: Mon, 21 Mar 2016 12:42:22 GMT 有效期
Connection: Keep-Alive 持续保持
Content-Type: text/html 传输类型
响应主体:<HTML>。。。</HTML> (wget baidu.com)
7、动态web服务请求过程?
答:
a,浏览器请求-->httpd得到请求--
b, -->解析请求格式(html,css)
c, -->请求响应php解析
d, -->请求数据库数据db
e, -->返回结果httpd
f, -->返回数据给浏览器(可能压缩过)
8、http协议请求原理?
答;
a、http属于TCP/IP模型中的应用层协议
b、版本特性:
http1.0:每次请求都要要求建立一次单独的连接
http1.1: 一次连接中可以处理多个请求,并且多个请求可以重叠进行
c、http请求流程:(见7)
从客户端开始
一、获取web服务器ip(见1)
二、建立TCP连接
三、向web服务器发送请求信息
四、web服务器返回相应的应答信息
五、客户端接收应答信息并解释执行
d、http请求包含的信息:(见5)
一、一个请求行
二、若干消息头
三、实体内容
四、请求方式(GET或POST)
e、web服务器响应的信息:
一、状态行(见6)
二、若干消息头
三、实体内容
http协议通信原理的问答的更多相关文章
- [转]HTTP协议通信原理
本文转自<HTTP协议通信原理> 了解HTTP HTTP(HyperText Transfer Protocol)是一套计算机通过网络进行通信的规则.计算机专家设计出HTTP,使HTTP客 ...
- HTTP协议通信原理 与常见报错信息
HTTP协议通信原理 请求报文 请求行 GET index.html HTTP 1.1 请求方法:get 读取服务器数据内容 post 提交存储服务端数据(用户注册) 协议版本: ht ...
- TCP网络协议通信原理(客户端和服务器端)
下面直接用代码来说明TCP协议的基础知识: 服务器端代码块: from socket import * from time import ctime ''' 指定主机地址.工作端口号.接收缓存的长度 ...
- 基于web的IM软件通信原理分析
关于IM(InstantMessaging)即时通信类软件(如微信,QQ),大多数都是桌面应用程序或者native应用较为流行,而网上关于原生IM或桌面IM软件类的通信原理介绍也较多,此处不再赘述.而 ...
- udp-->socket通信原理
UDP数据通讯原理 UDP数据通讯分服务端(软件)和客户端端: 服务端(软件)(服务器)先运行,服务端,不需要事先知道客户端IP和port 客户端(软件)(客户端机器)后运行, ...
- Socket 通信原理(Android客户端和服务器以TCP&&UDP方式互通)
转载地址:http://blog.csdn.net/mad1989/article/details/9147661 ZERO.前言 有关通信原理内容是在网上或百科整理得到,代码部分为本人所写,如果不当 ...
- SSL 通信原理及Tomcat SSL 配置
SSL 通信原理及Tomcat SSL 双向配置 目录1 参考资料 .................................................................. ...
- Java 下 SSL 通信原理及实例
有关SSL的原理和介绍在网上已经有不少,对于Java下使用keytool生成证书,配置SSL通信的教程也非常多.但如果我们不能够亲自动手做一个SSL Sever和SSL Client,可能就永远也不能 ...
- AIDL通信原理
AIDL (Android Interface Definition Language),通过定义通信接口来实现进程间通信.这是Google提供的一种在安卓应用进程间通信的工具.所以要了解AIDL的通 ...
随机推荐
- iOS开发UI基础—手写控件,frame,center和bounds属性
iOS开发UI基础—手写控件,frame,center和bounds属性 一.手写控件 1.手写控件的步骤 (1)使用相应的控件类创建控件对象 (2)设置该控件的各种属性 (3)添加控件到视图中 (4 ...
- Mono for Android 优势与劣势
原文:Mono for Android 优势与劣势 最近有兴趣了解一下Mono for Andriod,也就是使用.NET平台来开发Andriod程序.Mono for Android API 几乎映 ...
- 实现ImageView中两张图片重叠显示
第一种XML配置 使用layer-list标签 <layer-list xmlns:android="http://schemas.android.com/apk/res/androi ...
- 【CF】142 Div.1 B. Planes
SPFA.注意状态转移条件,ans的求解需要在bfs中间求解.因为只要到了地点n,则无需等待其他tourist.还是蛮简单的,注意细节. /* 229B */ #include <iostrea ...
- handlebars模板库的资源
web 开发中,js 解析JSON 是经常的事情.非常繁琐.handlebars 使用了模版,只要你定义一个模版,提供一个json对象,handlebars 就能吧json对象放到你定的模版中,非常方 ...
- HDU 4788 Hard Disk Drive (2013成都H,水题) 进位换算
#include <stdio.h> #include <algorithm> #include <string.h> #include<cmath> ...
- Bzoj 2763: [JLOI2011]飞行路线 dijkstra,堆,最短路,分层图
2763: [JLOI2011]飞行路线 Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 1728 Solved: 649[Submit][Statu ...
- 一步一步写一个简单通用的makefile(四)--写一个通用的makefile编译android可执行文件
通常要把我们自己的的代码编译成在android里面编译的可执行文件,我们通常是建一个文件夹 . ├── Android.mk ├── Application.mk ├── convolve.cl ├─ ...
- Yii Framework 开发教程Zii组件-Tabs示例
有关Yii Tab类: http://www.yiichina.com/api/CTabView http://www.yiichina.com/api/CJuiTabs http://blog.cs ...
- 《应用Yii1.1和PHP5进行敏捷Web开发》学习笔记(转)
学习地址为: http://www.yiibook.com/book/agile_web_application_development_with_yii1.1_and_php5 1.建立应用程序 ...