跳至主要內容
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?

4563博客

全新的繁體中文 WordPress 網站
  • 首頁
  • 有非 socket 实现的 tcp 协议吗
未分類
19 7 月 2020

有非 socket 实现的 tcp 协议吗

有非 socket 实现的 tcp 协议吗

資深大佬 : FutherAll 8

或者有不基于 socket 实现的 http server 吗?

大佬有話說 (25)

  • 資深大佬 : choury

    你是想用 dpdk 吗

  • 資深大佬 : cheneydog

    嵌入式操作系统里有那种纯粹的 tcp 协议包,底层是自己处理芯片驱动,也可以随便改

  • 資深大佬 : codehz

    socket 只是 unix 那边的东西,win 这边完全可以绕开 winsocks(1/2)实现 http 。。。比如那个著名的 http.sys https://docs.microsoft.com/en-us/windows/win32/http/http-server-sample-application

  • 資深大佬 : xumng123

    quic,参考一下

  • 資深大佬 : kilen3a

    当然有,非 Unix 就没 socket 啊

  • 資深大佬 : wellsc

    dkpk

  • 資深大佬 : sujin190

    写个驱动直接操作网卡?但是又有个啥用呢,该解决的问题你还是得解决一遍啊

  • 資深大佬 : est

    @xumng123 非 tcp,但是依然基于 udp socket 的。

  • 資深大佬 : shansing

    又一个 XY problem ?

  • 資深大佬 : nightwitch

    我只贴个图。。你这个由 socket 实现 TCP 让我有点蒙
    有非 socket 实现的 tcp 协议吗

  • 資深大佬 : Mistwave

    @nightwitch 请问这是哪本书的图?

  • 資深大佬 : ZehaiZhang

    请教:socket 不是基于 TCP/IP 协议的么,lz 的意思是,(非) socket 实现 TCP 协议?

  • 資深大佬 : Keyes

    socket 就像字面意思一样是个套儿而已

  • 資深大佬 : nightwitch

    @Mistwave The Linux Programming Interface 有中文版

  • 資深大佬 : Leigg

    socket 只是个名字,表示<hostname:port>,你们不要针对它好不咯,上一堆瞎扯,还非 unix 就没有 socket…

  • 資深大佬 : Shazoo

    主应该看下 #10 的解释。

    给你明确下,Socket 并不是使用 tcp 协议唯一路径,但是确实是最最流行和通用的(考虑下 cross-platform )方案。你可以把 socket 的理解为一套使用 tcp 的库。毕竟谁也不太想考虑 tcp 包序,syn 握手啥的。

    你可以参考下嵌入式设备最长使用的 Lwip,使用 tcp 方案应该有好几种,记得可以使用 netconn 方案啥的。

    在高级 os 内,你可以直接操作驱动来构造 tcp 报文,然后 send/recv 。一些异性报文或者 exploit 就是这么做到的。可以参考下 winpcap,或者 winddk 直接造。( unix like 的,可以直接用 socket 的 raw 方案做报文,不需要直接 drv 层。windows 之前可以,后来出于安全,给禁掉了。忘记是 win2k 还是 xp 上禁掉的,当时死了一批猴子脚本工具)。

    他们说的 dpdk,我记得是修改驱动的中断方式,貌似和 socket 关系不大。那是做高频和游戏高并发用的。

  • 資深大佬 : reus

    你这里的 socket 指 Berkeley socket 吧? wikipedia 说得很清楚了: https://en.wikipedia.org/wiki/Berkeley_sockets
    这是一种 API,当然可以有其他的 API,windows 的 TCP 实现就不是用 posix socket 的。

  • 主 資深大佬 : FutherAll

    我理解的是 socket 是一种 Interface,是 BSD 对 tcp 协议抽象出的一组接口,并且在 Unix-link 的操作系统上都实现了 socket,并提供给应用使用;我是想理论上来说应该是有非 socket 实现的 tcp 协议,没 Google 到所以来问问,顺便理清一下思路。
    多谢上各位的回答。

  • 資深大佬 : misaka19000

    你甚至可以自己操作网卡发送 raw 数据包

  • 資深大佬 : VDimos

    完全可以,你只要愿意,最底层可以直接通过串口来写

  • 資深大佬 : kilen3a

    @Leigg 你在搞笑?主说的明显是 socket API/berkeley socket 好吗

  • 資深大佬 : Mistwave

    @nightwitch 非常感谢!

  • 資深大佬 : yuyuko

    XTI ?

  • 資深大佬 : realpg

    @FutherAll #18
    直接操作网卡,发 raw data packets

  • 資深大佬 : sariya

    用 USB 协议,232 发都可以,只是一个载体

文章導覽

上一篇文章
下一篇文章

AD

其他操作

  • 登入
  • 訂閱網站內容的資訊提供
  • 訂閱留言的資訊提供
  • WordPress.org 台灣繁體中文

51la

4563博客

全新的繁體中文 WordPress 網站
返回頂端
本站採用 WordPress 建置 | 佈景主題採用 GretaThemes 所設計的 Memory
4563博客
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?
在這裡新增小工具