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

    1、socket的核心思想是,作为服务器间的进程间通信的最底层的实现,常用的大部分网络协议都是基于socket实现。

         

    2、socket 是如何与最终的低层收发包建立联系的?

         

    3、socket 是如何与VFS建立关系的?

    4、TIPC与socket的关系。

         

    5、Socket与EPOLL之间的关系

          因为对于服务器端程序而言,可以同时接受很多客户端的socket连接,那么,必须实现并行处理的机制,常用的方法是多进程,也就是说,服务器端的socket一旦建立连接后,立即生成一个新的进程与客户端之间进行后续socket处理,原先的socket继续监听新的客户端请求,那么,此时就存在一个问题,那么多的客户端socket, 哪些有数据接收到了呢? 传统的方法是轮询,这个效率台低,于是使用epoll机制,只有在真正有数据待处理时才会产生事件。于是提高了处理效率。

    二、socket编程举例:

    1. windows socket, linux socket, python socket, linux shell socket编程。

       windows socket编程

    2. Linux shell socket编程举例

        (1)字符串交互

         服务器端: nc -l 1234          -----> 表示在本地的1234端口上启动socket监听。

         客户端: nc 192.168.248.156  1234        ---> 表示连接到服务器的1234端口。

         然后客户端在shell上输入的内容,就会显示在服务器端的shell 命令中,同理,服务器在shell中输入的内容会显示在客户端的shell中。

         下面是服务器端的命令:

         

         在客户端上,输入如下命令:

    (2)传文件

       与上述服务器端类似,把服务器端和shell重定向相结合,将接收到的内容保存到文件,而客户端直接发送一个文件,即可完成文件的传输。

       

       

       下面是客户端程序:

        

  • 相关阅读:
    关于wepy小程序图片显示问题
    输入地址到页面显示发生了写什么?
    一次Debug过程的思考
    一次冗长繁琐的排错经历
    PHP内核探索之变量(7)- 不平凡的字符串
    PHP内核探索之变量(6)- 后续内核探索系列大纲备忘
    PHP内核探索之变量(5)- session的基本原理
    PHP内核探索之变量(4)- 数组操作
    PHP内核探索之变量(3)- hash table
    PHP内核探索之变量(2)-理解引用
  • 原文地址:https://www.cnblogs.com/zhouhaibing/p/7669278.html
Copyright © 2011-2022 走看看