linux 환경에서 새로운 프로토콜 개발 방법 질문

익명 사용자의 이미지


tcp/ip 환경이 아닌 새로운 체계의 프로토콜을 만드는 방법을 알고 싶습니다.

osi 계층 구조를 통한 통신이 아닌..

현재 리눅스 구조를 수정하여서 custom 구조를 만들었다고 가정하고, 통신하는 방법을 알고 싶습니다.

즉.. 특정 환경이 이더넷을 사용하지 않고 자신들만의 프로토콜로 통신하게 하기 위해서 필요합니다.

예를들면 tcp/ip 개념은 사용하지 않고 단지 mac address만 사용하고...

그 위의 계층은 제가 만들어야 할 것 같아서요.

어떻게 어디서 부터 시작해야 할 까요...

그냥 막연한 생각으로는 driver_layer의 net_driver부터 sk_buff를 제가 직접 만들어서 통신하는 프로토콜을

설치하는 방법이 떠오르는데.. 맞는지도 모르겠고..

ㅠㅠ 혹시 관련 경험이나 자료있으시면 조언 부탁드립니다.

익명 사용자의 이미지

가장 궁금한 건 왜 이걸 만들어 보려고 하냐는 것입니다.

Quote:
즉.. 특정 환경이 이더넷을 사용하지 않고 자신들만의 프로토콜로 통신하게 하기 위해서 필요합니다.

예를들면 tcp/ip 개념은 사용하지 않고 단지 mac address만 사용하고...

MAC 주소를 사용한다는 게 이더넷을 사용하는 겁니다.

smreo의 이미지

fc-al 같은 걸 생각하나요? 그외에는 x.25나 SNA3270이 있겠죠. 이건 OSI 7층의 개념 이전에 나온 것들이니까요.

jhong3842의 이미지

MAC만 사용하고 나머지 위의 프로토콜은 커스텀해서 사용가능할 것 같은데
어디서부터 봐야할지 몰겠습니다

헣헣의 이미지

에도 불구하고 mac을 사용하시다니! OSI계층 구조를 배우시면서 mac을 배우셨을터... OSI부터 다시ㅠㅠ

jic5760의 이미지

RAW 소켓을 이용하셔서 MAC Frame까지 수동으로 만들어서 보내고 받고 하면 됩니다.
이건 커널레벨이 아니라 User레벨에서도 가능합니다.

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.