zoukankan      html  css  js  c++  java
  • 网络编程

    一 客户端/服务器架构

    应用类:qq等应用

    web类:百度网页等

    cs架构 和bs架构,其实bs 是cs架构的一种

    osi七层,一般来说将5、6、7看为一层

    应用层  负责编辑程序等

    传输层 选择通信协议tcp/udp

    网络层 给上一步的消息加IP信息

    数据链路层  给上一步的东西添加mac地址

    物理层 通过网线 网卡的物理介质传输东西 给另一台

    IP地址可以确认唯一的电脑

    端口确定为一个程序

    ip+端口 确认唯一机器的唯一程序

    可以通过IP地址找到mac地址就是arp协议

    建立连接需要三次握手

    数据传输需要2次

    断开连接需要4次握手

    socket层

    socket又叫做套接字

    套接字是一种具有之前说的通信端点概念的计算机网络数据结构

    网络化的程序在开始任何通讯前都必须创建套接字

    套接字有两种

    一种是文件型应用于同一台电脑上不同程序之间的通讯

    另一种是基于网络型的 用于不同电脑

    AF_INET是现存的最长用的套接字

    套接字地址:主机与端口

    合法的端口0~65535

    小于1024的端口是系统保留端口,一般用的是8000往上,最熟悉的端口是8080

    面向连接, TCP套接字,  指定套接字SOCK_STREAM 整套分块有序传输没有数据边界

    无连接  UDP套接字 指定套接字为SOCK_DGRAM 数据宝套接类型的无连接套接字,无需建立连接就可以直接通讯,数据可达顺序,可靠性,不重复性无法保证,数据报是将数据整个发送,无法保证一定可以到达,但是好处是没必要维护虚拟线路等,成本低廉

    socket模块函数

    tcpsock = socket.socket(socket.AF_INET)  

    import socket
    tcpsock = socket.socket()
    tcpsock.bind(('192.168.13.86',8888))
    tcpsock.listen()
    conn,addr = tcpsock.accept()
    userinfo = True
    while userinfo !='bey':
        ret = conn.recv(1024).decode('utf-8')
        if ret == 'bey':
            conn.close()
            break
        print(ret)
        userinfo = input('请输入代码')
        conn.send(bytes(userinfo,encoding='utf-8'))
    tcpsock.close()
    
    
    客户端
    import socket
    tcpsock = socket.socket()
    tcpsock.connect(('127.0.0.1',8888))
    userinfo = True
    while userinfo != 'bey':
        userinfo= input('请输入内容')
        tcpsock.send(bytes(userinfo,encoding='utf-8'))
        ret = tcpsock.recv(1024).decode('utf-8')
        if ret == 'bey':
            tcpsock.send(b'bry')
            break
        print(ret)
    tcpsock.close()
  • 相关阅读:
    poj1141
    poj1260
    poj1080
    poj1221
    用Microsoft Office SharePoint Designer 2007开发aspx
    在Web Part中使用User Control
    MOSS中的WebPart开发
    在MOSS中开发一个模块化的feature
    SharePoint Web Service的身份验证
    MOSS中对列表的一些操作(创建,查询等)
  • 原文地址:https://www.cnblogs.com/Ebola-/p/8352627.html
Copyright © 2011-2022 走看看