运维自动化之-----ansible之intnet和http协议技术 (10)

ansible常用的网站

https://galaxy.ansible.com/
https://galaxy.ansible.com/search?deprecated=false&keywords=&order_by=-relevance
http://www.ansible.com.cn/
https://github.com/ansible/ansible
https://github.com/ansible/ansible-examples

HTTP协议和APACHE软件

apache软件主要是对外提供服务,其专门提供服务的协议叫tcphttp协议

internet

internet和http协议

在这里插入图片描述
因特网是"Internet"的中文译名,它起源于美国的五角大楼,它的前身是美国国防部高级研究计划局(ARPA)主持研制的ARPAnet。20世纪50年代末,正处于冷战时期。当时美国军方为了自己的计算机网络在受到袭击时,即使部分网络被摧毁,其余部分仍能保持通信联系,便由美国国防部的高级研究计划局(ARPA)建设了一个军用网,叫做"阿帕网”(ARPAnet)。阿帕网于1969年正式启用,当时仅连接了4台计算机,供科学家们进行计算机联网实验用,这就是因特网的前身。
到70年代,ARPAnet已经有了好几十个计算机网络,但是每个网络只能在网络内部的计算机之间互联通信,不同计算机网络之间仍然不能互通。为此,ARPA又设立了新的研究项目,支持学术界和工业界进行有关的研究,研究的主要内容就是想用一种新的方法将不同的计算机局域网互联,形成"互联网”"。研究人员称之为"internetwork",简称"Internet"
在研究实现互联的过程中,计算机软件起了主要的作用。1974年,出现了连接分组网络的协议,其中就包括了TCP/IP协议。TCP/IP有一个非常重要的特点,就是开放性,即TCP/IP的规范和Internet的技术都是公开的。目的就是使任何厂家生产的计算机都能相互通信,使Internet成为一个开放的系统,这正是后来Internet得到飞速发展的重要原因。ARPA在1982年接受了TCP/IP,选定Internet为主要的计算机通信系统,并把其它的军用计算机网络都转换到TCP/IP。1983年,ARPAnet分成两部分:一部分军用,称为MILNET;另一部分仍称ARPAnet,供民用。1986年,美国国家科学基金组织(NSF)将分布在美国各地的5个为科研教育服务的超级计算机中心互联,并支持地区网络,形成SNSFnet。1988年,SNSFnet替代ARPAnet成为Internet的主干网。NSFnet主干网利用了在ARPAnet中已证明是非常成功的TCP/IP技术,准许各大学、政府或私人科研机构的网络加入。1989年,ARPAnet解散,lnternet从军用转向民用。
Internet的发展引起了商家的极大兴趣。1992年,美国IBM、MCI、MERIT三家公司联合组建了一个高级网络服务公司(SNS),建立了一个新的网络,叫做SNSnet,成为Internet的另一个主千网。它与SNSFnet不同,NSFnet是由国家出资建立的,而SNSnet则是SNS公司所有,从而使Internet开始走向商业化。
1995年4月30日,SNSFnet正式宣布停止运作。而此时Internet的骨干网已经覆盖了全球91个国家,主机已超过400万台。在最近,因特网更以惊人的速度向前发展,很快就达到了的规模
在90年代,超文本标识语言(HTML),即一个可以获得因特网的图像信息的超文本因特网协议被采用,使每一个人可以产生自己的图像页面(网址),然后成为一个巨大的虚拟超文本网络的组成部分。这个增强型的因特网又被非正式地称为万维网,与此同时产生了数量庞大的新用户群。于是,许多人用“因特网”"一词指这个网络的物理结构,包括连接所有事物的客户机、服务器和网络;而用“万维网"一词指利用这个网络可以访问的所有网站和信息。

1.2 internet 中国

在这里插入图片描述
在这里插入图片描述
北京时间1987年9月20日,钱天白建立起一个网络节点,通过电话拨号连接到国际互联网,向他的德国朋友发出来自中国的第一封电子邮件: Across the Great Wall we can reach every corner in the world,自此,中国与国际计算机网络开始连接在一起
1990年10月,钱天白教授代表中国正式在国际互联网络信息中心的前身DDN-NIC注册登记了我国的顶级域名CN,并且从此开通了使用中国顶级域名CN的国际电子邮件服务。由于当时中国尚未正式连入Internet,所以委托德国卡尔斯鲁厄大学运行CN域名服务器
1993年3月2日,中国科学院高能物理研究所租用AT&T公司的国际卫星信道接入美国斯坦福线性加速器中心(SLAC)的64K专线正式开通,专线开通后,美国政府以Internet上有许多科技信息和其它各种资源,不能让社会主义国家接入为由,只允许这条专线进入美国能源网而不能连接到其它地方。尽管如此,这条专线仍是我国部分连入Internet的第一根专线
1994年4月20日,中国通过一条64k的国际专线全功能接入国际互联网,成为国际互联网大家庭中的第77个成员,正式开启了互联网时代。随后,中科院高能物理研究所推出第一个WWW网站和第一套网页
1994年5月21日,在钱天白教授和德国卡尔斯鲁厄大学的协助下,中国科学院计算机网络信息中心完成了中国国家顶级域名(CN)服务器的设置,改变了中国CN顶级域名服务器一直放在国外的历史
1995年5月17日,第27个世界电信日,邮电部正式宣布,向国内社会开放计算机互联网接入服务
1995年5月,北京的中关村南大街上出现了一块巨大的广告牌,“中国离信息高速公路还有多远?向北1500米。“那个位置就是一家叫"瀛海威"的网络科教馆,瀛海威正是information highway的音译,作为中国第一个互联网接入服务商,瀛海威几乎就是当时互联网的代名词
1996年1月,中国互联网全国骨干网建成并正式开通,开始提供服务
1995年4月,马云凑了两万块钱,成立杭州海博网络公司,专门给企业做主页1997年5月,丁磊创立网易
1998年2月,张朝阳创立搜狐
1998年6月18日,刘强东在中关村创办京东公司,代理销售光磁产品
1998年11月,马化腾和张志东成立深圳市腾讯计算机系统有限公司,OICQ开通1998年12月,新浪网成立,关键人物:王志东
1999年5月18日,中国第一家电子商务企业8848.com成立,创始人王峻涛也曾被誉为"中国电子商务教父”。2000年底,调查显示接近70%的人说上网买东西首选8848
2000年1月,李彦宏创建了百度
2003年5月,阿里巴巴集团在创立淘宝网2003年10月,淘宝网首次推出支付宝服务
2004年1月,京东多媒体网正式开通,启用域名www.jdlaser.com2010年4月,雷军创办小米
2011年1月21日,腾讯公司推出微信(WeChat)2012年3月,今日头条由张一鸣于创建
2012年7月10日,北京小桔科技有限公司成立,滴滴司机端3个月后北京上线下一个又是谁呢?
中国互联网连接世界
1885年台湾建省,首任巡抚刘铭传派人与福州船政联系,使用船政电报学堂毕业生为技术人员,于1887年铺设成功台湾淡水至福州川石海底电缆,全长117海里。这是我国自行设计安装的第一条海底电缆。此电缆毁于第二次世界大战我国于1989年开始投入到全球海底光缆的投资与建设中来,并于1993年实现了首条国际海底光缆的登陆(中日之间C-]海底光缆系统)﹔随后在1997年,我国参与建设的全球海底光缆系统(FLAG)建成并投入运营,这也是第一条在我国登陆的洲际海底光缆中国连接世界目前共有8条光缆,四个登陆站允许入境,目前我国的登陆站设立在三个城市的四个地区,分别是山东青岛登陆站(隶属中国联通)、上海崇明登陆站(隶属中国电信)、上海南汇登陆站(隶属中国联通)和广东汕头登陆站(隶属中国电信)

1.3 跨网络的主机间通讯

Socket 套接字
在这里插入图片描述
套接字Socket是进程间通信ipc的一种实现,允许位于不同主机(或同一主机)上不同进制之间进行通信和数据交换,SocketAPI出现于1983年,4.2.BSD实现
在建立通信连接的每一端,进程间的传输要有两个标志,:IP地址和端口,合称套接字地址socket addresske客户机套接字地址定义一个唯一的客户进程
服务器套接字地址定义了一个唯一的服务进程
在这里插入图片描述
在这里插入图片描述

Socket API

封装了内核中所提供的socket通信相关的系统调用
Socket Domain:根据其所使用的地址
AF_INET:Address Family,IPv4
AF_INET6:IPV6
AF_UNIX:同一主机上不同进程之间通信时使用
Socket_Type:根据使用的传输层协议
SOCK_STPEAM:流,tcp套接字,可靠地传递,面向连接
SOCK_DGRAM:数据流,udp套接字,不可靠地传递,无连接
SOCK_RAW:裸套接字,无须tcp或udp,APP直接通过IP包通信

客户/服务器程序的套接字函数

在这里插入图片描述
首先tcp服务器运用socket打开一个对象,在bind上会有一个ip地址和端口上绑定上,,通过listen函数把监听的端口打开,远程的客户端通过connect发起请求后,accept会打开一个新的New Socket 这个socket会负责和客户端进行数据的相互通信,(发收)网络通信结束后两个都会把通信给断开close。。当另一个用户也发起连接的时候会生成另一个socket。监听的仅仅有一个socket哦哦哦。。

可查看先帮助文档
[root@hdss7-11 ansible]# man socket
套接字相关的系统调用
* socket()    创建一个套接字
* bind()      绑定IP和端口
* listen()    监听
* accept()    接收请求
* connect()   请求连接建立 
* write()     发送 
* read()      接收 
* close()     关闭连接
范例:Socket通信Python 3.6实现

在这里插入图片描述
在这里插入图片描述
——————————————

首先需要在server 和client上都要安装python3
安装方法yum -y isntall python3
在server上写脚本如下
[root@hdss7-11 ~]# cat tcpserver3.py
#!/usr/bin/python3
import socket
HOST='0.0.0.0'
PORT=9527
BUFFER=4096
sock=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
sock.bind((HOST,PORT))
sock.listen(3)
print('tcpServer listen at: %s:%s\n\r' %(HOST,PORT))
while True:
    client_sock,client_addr=sock.accept()
    print('%s:%s connect' %client_addr)
    while True:
        recv=client_sock.recv(BUFFER)
        if not recv:
            client_sock.close()
            break
        print('[client %s:%s said]:%s' %(client_addr[0],client_addr[1],recv.decode()))
        client_sock.send(b'tcpServer has received your message')
sock.close()
在client上写入脚本用于连接server服务端
[root@node2 ~]# cat tcpclinet.py
#!/usr/bin/python3
import socket
HOST='10.4.7.11'
PORT=9527
BUFFER=4096
sock=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
sock.connect((HOST,PORT))
sock.send(b'hello,tcpServer! I am tcp Client')
recv=sock.recv(BUFFER)
print('[tcpServer said]: %s' % recv.decode())
sock.close()
[root@node2 ~]#

然后进行测试

先在服务端上执行脚本注意执行方法
[root@hdss7-11 ~]# python3 tcpserver3.py
tcpServer listen at: 0.0.0.0:9527     #执行后会出现卡这等待连接的状态,你可另开窗口查看端口是否开发

在clinet端执行脚本让其和服务端连接
[root@node2 ~]# python3 tcpclinet.py    #执行后返回一句话就退出了
[tcpServer said]: tcpServer has received your message
在去服务端看会出现客户端发过来的话
[root@hdss7-11 ~]# python3 tcpserver3.py
tcpServer listen at: 0.0.0.0:9527

10.4.7.22:39578 connect
[client 10.4.7.22:39578 said]:hello,tcpServer! I am tcp Client

验证成功

1.4 HTTP超文本传输协议

1.4.1 浏览器访问网站的过程

在这里插入图片描述

1.4.2 http的通讯过程介绍

HTTP (HyperText Transfer Protocol,超文本传输协议)是一种用于分布式、协作式和超媒体信息系统的应用层协议[1]。HTTP是万维网的数据通信的基础设计HTTP最初的目的是为了提供一种远距离共享知识的方式,借助多文档进行关联实现超文本,连成相互参阅的Www (world wide web,万维网)
HTTP的发展是由蒂姆·伯纳斯-李(Tim Berners-Lee)于1989年在欧洲核子研究组织(CERN)所发起。HTTP的标准制定由万维网协会(World Wide Web Consortium,W3C)和互联网工程任务组(Internet EngineeringTask Force,IETF)进行协调,最终发布了一系列的RFC,其中最著名的是1999年6月公布的RFC 2616,定义了HTTP协议中现今广泛使用的一个版本----HTTP 1.1版

HTTP服务通信过程

在这里插入图片描述

HTTP协议分层

在这里插入图片描述

1.4.3 HTTP相关技术和术语

1.4.3.1 WEB开发语言
http:Hyper Text Transfer Protocol 应用层协议,默认端口:80/tcp

WEB前端开发语言:
  • html
  • css
  • javascript
html

Hyper Text Markup Language 超文本标记语言,编程语言,主要负责实现页面的结构
范例:html 语言
在这里插入图片描述
————————————
做一个简单的界面

<html>
<head>
<meta http-equiv=Content-Type content="text/html;charset=utf-8">
<title>HTML语言</title>
</head>
<body>
<img src="https://img0.baidu.com/it/u=3450122094,999784681&fm=26&fmt=auto&gp=0.jpg">
<h1 style="color:red">欢迎</h1>
<p><a hraf=https://img0.baidu.com>云端科技</a>欢迎您</p>
</body>
</html>

然后在桌面上把这个文件的名称改为html结尾的,打开就行了
在这里插入图片描述

在这里插入图片描述

css

Cascading Style Sheet层叠样式,定义了如何显示(装扮)HTML元素,比如:字体大小和颜色属性等,样式通常保存在外部的.css文件中,通过仅仅编辑一个简单的CSS文档,可以同时改变站点中所有页面的布局和外观
范例:CSS
在这里插入图片描述
——————————

创建两个文件
#test.html
<html>
<head>
<meta http-equiv=Content-Type content="text/html;charset=utf-8">
<link rel="stylesheet" type="text/css" href="mystyle.css" />
</head>
<body>
<h1>这是 heading 1</h1>
<p>这是一个普通段落,请注意段落的文本时红色的,在body选择器中定义了本页中的默认文本颜色。</p>
<p class="ex">该段落定义了class="ex"。段落中的文本颜色是蓝色。</p>
</body>
</html>

第二个名称必须是mystyle.css
#mystyle.css
body {color:ced}
h1 {color:#00ff00}
p.ex {color:rgb(0,0,255)}

在这里插入图片描述
看效果

在这里插入图片描述

js

javascript 实现网页的动画效果
在这里插入图片描述
————————————

<!DOCTYPE html>
<html>
<head>
<meta http-equiv=Content-Type content="text/html;charset=utf-8">
</head>
<body>
<h2>我的第一段 JavaScript</h2>

<button type="button"
onclick="document.getElementById('demo').innerHTML = Date()">
点击这里显示日期和时间
</button>

<p id="demo"></p>
</body>
</html>

在这里插入图片描述
时间会变化
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值