C\S 架构 DNS服务器 交换机 路由器

------------------------只有不快的斧,没有劈不开的柴;只有想不到的人,没有做不到的事。想干总会有办法,不想干总会有理由!
# ------------------------------------------------------------------------------------------------------------#

day 26

 

本阶段的内容

网络编程  并发编程  数据库  有可能还有前端

 

C\S架构(****) client server

软件C\S架构:客户端\服务端架构:京东,淘宝,今日头条,qq,微信.....

B\S架构:浏览器(browser)\服务端>>>统一接口

硬件C\S架构: 打印机.

 

网络通信整个流程(**)

 

网线:传输电信号

 

集线器:将所有连接到集线器的网络设备连通起来

 

交换机: 升级版的集线器

 

网卡:接受电信号

 

MAC地址:物理地址:   8C-EC-4B-88-B9-C9  #前三位厂商编号,后三位生产流水号

 

单播:

广播:

 

广播风暴:网络拥堵,信息不安全

 

 

 

Ip地址:

IPv4 地址: 192.168.15.46 #4个点分十进制

作用:划分广播域

 

192.168.15.46  #

Ipv4:192.168.15.0-192.168.15.255 # 八位二进制  256个电脑

Ipv6:

 

192.168.0.0 - 192.168.255.255

咱们班的ip地址段:192.168.15.0 -- 192.168.15.255

 

DHCP:自动分配IP地址

Arp:保存着ip地址和mac地址对应关系

Arp协议:通过ip地址获取mac地址

 

子网掩码:计算两个ip地址是否属于同一网段:

255.255.255.0

 

ip地址:192.168.15.46

11000000.10101000.00001111.00101110

11111111.11111111.11111111.00000000

11000000.10101000.00001111.00000000 #192.168.15.0

 

目标的ip:192.168.16.30   #192.168.16.0

 

路由器:转发消息

路由协议:计算路由转发消息的最优路径

 

端口号:0 - 65535,确定电脑上的应用程序的

Ip地址+端口 = 确定某个电脑上的某个应用程序

 

 

 

 

 

 

初识socket (*****)

 

看代码文件

 

# # --------------[ 服务端 ]--------------
import socket
#创建了一个socket对象
server = socket.socket() #创建一个手机
ip_port = ('192.168.15.113',8001) #创建了一张电话卡
#绑定IP地址和端口
server.bind(ip_port) #插上电话卡
#监听IP地址和端口

server.listen() #开机
print(11111)
#等待客户端的链接
conn, addr = server.accept() #等着别人给我打电话,阻塞住

#接收消息
from_client_msg = conn.recv(1024) #1024为消息大小,单位B,MB = 1024KB,1KB = 1024B
#接收的消息是bytes类型,需要转换为字符串
from_client_msg = from_client_msg.decode('utf-8')
print(from_client_msg)

conn.send('死鬼,十点'.encode('utf-8'))
#关闭链接
conn.close()
server.close()

# print(conn)
# print('>>>>',addr)

 

# # --------------[ 客户端 ]--------------

import socket
client = socket.socket()

server_ip_port = ('192.168.15.113',8001)

#链接服务端
client.connect(server_ip_port)

#发消息
client.send('约吗'.encode('utf-8')) #send里面的消息必须是字节类型的

from_server_msg = client.recv(1024) #阻塞住,等待接收消息
from_server_msg = from_server_msg.decode('utf-8')
print(from_server_msg)

client.close()

 

 

 

 

 

 

 

  

 

posted @ 2018-11-22 22:19  黄豆豆丨Dealdwong  阅读(263)  评论(1编辑  收藏  举报