네트워크 데이터 단위 정리 (매우 중요!)

Поделиться
HTML-код
  • Опубликовано: 15 ноя 2024

Комментарии • 80

  • @jerryk0269
    @jerryk0269 Год назад +12

    매번 느끼는 거지만 선생님 강의는 큰 그림을 추상화 해서 나타내 주시고 하나씩 구체적으로 진행하는데, 그러면서도 계속 되짚어 주니 이해도 너무 잘 가서 좋은 것 같습니다... 오늘 것 특히 너무 좋네요
    File I/O에서는 "Stream data라는 Data" 단위를 떠올려라
    Stream data : 시작은 정해져 있으나, 끝은 정해지지 않아 연속성을 가지는 데이터 / 패킷 / 비트 등의 흐름을 의미한다
    ⭐ 네트워크 데이터 전송 흐름 ⭐
    1. User mode 수준(= Socket 수준) : Application Process가 Socket(Device File)에 "Stream Data"를 write한다
    2. Kernel 수준 : Transport 계층에서 Stream Data에 대해 MSS(Maximum Segment Size)를 기준으로 잘라 "Segment"로 만든다. (이 행위를 "Segmentation"이라 한다)
    3. Kernel 수준 : Network 계층에서 Segment를 인터넷으로 전송 가능한 형태로 포장해 "Packet"으로 만든다. Packet의 길이 기준은 MTU(Maximum Transport Unit)이라 부르며, 기본 1500 bytes이다. (MSS는 이보다 더 작다)
    4. H/W 수준 : Packet을 "Frame"으로 "Encapsulation"해 인터넷으로 전송한다

    • @nullnull_not_eq_null
      @nullnull_not_eq_null  Год назад +1

      잘 정리해 자신의 것으로 만들면 되지요. 좋은 평가와 피드백 감사합니다. ^^

  • @_kyaru
    @_kyaru Год назад +3

    한학기에 수백만원 주고 들을 수 있는 강의입니다.
    진짜 면접전에 꼭 정주행 하고 가야합니다.

  • @devdevjb
    @devdevjb 2 года назад +3

    중요 키워드 file,segement,packet,frame,segmentation,MSS,MTU user모드에서의 데이터가 어떻게 분해되어 , 커널,h/w단에서의 전송가능한 형태가 되는지 알아야한다.
    항상 좋은 강의 감사드립니다.

  • @100-back
    @100-back 2 года назад +1

    처음볼땐 몰랐는데 책보고 다시보니까 완전 떠먹여주는 강의 인걸 뼈저리게 느낍니다.. 정말 좋은강의 감사합니다

    • @nullnull_not_eq_null
      @nullnull_not_eq_null  2 года назад

      좋은 평가와 피드백 감사합니다. 개인적으로 '암기로 끝내자'라는 의도록 만든 강의입니다. 나름 최적화를 끝낸 것이긴 합니다. ^^

  • @박상훈-q5w
    @박상훈-q5w 2 года назад +1

    OSI 7계층으로 네트워크 공부를 처음 시작했는데
    그때 공부한 내용을 다시 보니 반갑네요 ㅎㅎ 이해가 잘 되지 않는 내용은 암기하고 넘어갔는데
    설명을 들으면서 보니 개념이 자리가 잡히는 것 같습니다 강의 감사합니다!

    • @nullnull_not_eq_null
      @nullnull_not_eq_null  2 года назад

      그렇다면 다행이네요. 추상적인 개념을 조금은 구체화 해보려고...나름 노력했는데 보람이 있습니다. 피드백 감사합니다. ^^

  • @junyoungpark7742
    @junyoungpark7742 2 года назад +4

    이런 강의를 제공해주셔서 진심으로 감사합니다.
    돈주고 들어야만 할 것 같은데 무료로 배포하시다니 의도를 감히 상상할수도 없네요..!

    • @nullnull_not_eq_null
      @nullnull_not_eq_null  2 года назад +8

      좋은 평가와 피드백 감사합니다. 의도는 두 가지 입니다. 입니다.
      1. 저 실버버튼 갖고 싶습니다. ^^;;;;
      2. 대한민국 모든 개발자가 소위 전공자 수준에 도달하기를 바랍니다.

    • @junyoungpark7742
      @junyoungpark7742 2 года назад +1

      @@nullnull_not_eq_null 협업에 계신 분들중에 이런거 잘 모르시는 분들 꽤나 많은 것 같아요. 물론 저도 그렇구요;;ㅎㅎ
      널리널리 알려서 실버버튼 받으실 수 있게 하겠습니다

    • @nullnull_not_eq_null
      @nullnull_not_eq_null  2 года назад

      응원과 공감 감사합니다. 열심히 달리겠습니다. ^^

  • @yc7260
    @yc7260 9 месяцев назад

    ㅠ.ㅠ 학교에서도 이런건 못배웠는데... 최근에 AWS 만지면서 네트워크에 대한 도메인 지식이 부족한게 뼈저리게 느껴져서 이것저것 찾아보던 중 발견했습니다. 개인적으로 대학 강의보다 훨씬 더 좋은 것 같습니다. 실무에서 많이 사용되고 필요한 지식 위주로 설명해주셔서 그런것이겠죠. 감사합니다!

    • @nullnull_not_eq_null
      @nullnull_not_eq_null  9 месяцев назад +1

      저는 학교에서 강의하는 사람은 아니라서 그런 것 같습니다. 좋게 봐주셔서 고맙습니다. :)

  • @김제하-q6w
    @김제하-q6w 2 года назад +3

    가상 메모리 관리 기법 중 크기 기준으로 나누는 paging 기법과 의미 단위로 나누는 segment 기법 그리고, 물리적 메모리를 frame 단위로 나누는 내용이 이렇게 이어지는 군요
    물리적 메모리라서 HW 층에서 Frame이고, kernel 영역에서 segment로 바뀌는 군요.

    • @nullnull_not_eq_null
      @nullnull_not_eq_null  2 года назад +1

      네, TCP에서 Segment로 끊어지죠. 그 전에 소켓 수준에서는 Streem이라는 것도 꼭 함께 기억하시면 분명히 도움이 될 겁니다. 피드백 감사합니다. ^^

  • @eastino
    @eastino 2 года назад +1

    머리에 쏙쏙 박아주시는 좋은 강의에요! 근데 자꾸 까먹어서 따로 정리해야겠습니다!

  • @django3861
    @django3861 2 года назад +2

    하 진짜 설명이 그래도 제가 개발공부를 제대로 하고 있었구나라는 생각도 들고 하.. stream 정말 좋은 강의 감사합니다

    • @django3861
      @django3861 2 года назад +1

      대표님에게는 죄송하지만, 나만 알고싶은 강의...

    • @nullnull_not_eq_null
      @nullnull_not_eq_null  2 года назад +1

      좋은 평가와 피드백 감사합니다. 시간이 지날 수록...처음 배울 때 '어휘'에 대한 정리가 중요하다는 생각을 하게 됐습니다. ^^

    • @django3861
      @django3861 2 года назад +1

      정말 공감합니다. 그래서 전 공부를 기본적으로 공식문서와 영어로 해야한다는 주의입니다. 한국어로 번역하는 과정에서 잘못 번역되거나 정확한 의도나 뜻이 전달되지 않는 경우가 많더라구요. 감사합니다. 휴일 잘보내세요~

    • @nullnull_not_eq_null
      @nullnull_not_eq_null  2 года назад +3

      제가 제일 어이가 없었던 어휘는 '터널'이었습니다. VPN 터널...정말로 그런 것이 있는 줄 알고 한 참 고민을 했었지요. ^^;;;;

  • @marunarae550
    @marunarae550 2 года назад +3

    socket에 stream형태로 쓴 데이터를 세그먼테이션으로 mss사이즈만큼 잘라서 tcp계층에 전달하고, ip계층에서 패킷이라는 형태로 변경하는데 mtu만큼의 사이즈가 최대치.. mss는 mtu 이하의 크기를 갖고, mtu는 일반적으로 1500바이트.. 패킷은 다시 프레임이라는 형태로 encapsulation해서 보낸다!
    세그먼트랑 프레임.. 페이징.. 이런식으로 연결되는군요.

    • @nullnull_not_eq_null
      @nullnull_not_eq_null  2 года назад

      네 맞습니다. 잘 정히사셨네요. ^^;
      다만...'페이징' 이라는 용어는 가상메모리나 파일 시스템에서 등장합니다. 네트워크에 사용되는 용어는 경우는 잘 보지 못한 것 같습니다. 참고하시기 바랍니다. ^^

  • @changyeopchi684
    @changyeopchi684 Год назад

    항상 단위별로 뭐가 다른 건지 의문이었는데 이게 이렇게 연결되는 것인 줄 몰랐습니다.
    감사합니다.

    • @nullnull_not_eq_null
      @nullnull_not_eq_null  Год назад

      영상이 도움이 된 것 같아 다행입니다. 열공하시고 좋은 성과 거두세요~~! :)

  • @dgk7167
    @dgk7167 2 года назад

    책을 보면서 네트워크에 대한 내용을 이해하는게 너무 어려웠는데 이렇게 설명을 깔끔하게 해주셔서 네트워크 공부가 조금씩 진행되는 것 같아 감사하다고 말씀드리고 싶습니다 :)

    • @nullnull_not_eq_null
      @nullnull_not_eq_null  2 года назад

      좋은 평가와 피드백 감사합니다. 강의 올린 보람을 느낍니다. ^^

  • @deniapark761
    @deniapark761 Год назад

    안녕하세요
    항상 강의 해주신 내용들 관련해서 정말 잘 듣고 있습니다.
    강의를 듣다가 몇가지 제가 알고 있는 내용과 알려주신 내용이랑 다른게 있어서 몇가지 여쭤보고 싶습니다 !
    1. IP 패킷의 최대크기를 MTU 라고 알려주셨는데 제가 알기로는 이더넷 프레임에서 데이터의 최대 크기를 MTU 라고 알고 있는데 MTU를 IP 패킷의 최대 길이로 이해를 해도 상관없는 부분일까요 ??
    ※ 그리고 저도 검색하다가 알게된 것인데 MTU는 maximum transmission unit 이라고 나와있더라구요. 영상에서 maximum transfort unit 라고 말씀해주셔서 말씀드립니다.

    • @nullnull_not_eq_null
      @nullnull_not_eq_null  Год назад +1

      좋은 평가와 피드백 감사합니다.
      1. 네, 다수의 장치에서 MTU는 보통 Packet의 최대크기 입니다.
      2. 제가 Transport라고 했다면 잘못 말한 것입니다. Transmission이 맞습니다.
      잘못된 내용에 대한 제보 감사합니다. 이 나이를 먹어도 삽질은 늘 따라다네요. ^^;;;

    • @deniapark761
      @deniapark761 Год назад

      @@nullnull_not_eq_null 정말 감사합니다 !!

  • @젤리껌
    @젤리껌 2 года назад +1

    와~!! 약어로만 어설프게 알고있던것을 이렇게 정리해주시다니~!! 머리를 한대 맞은 느낌입니다~ㅎㅎ
    맨날 나무만 보다가 숲을 볼수있게 해주시는군요~ㅎㅎ

    • @nullnull_not_eq_null
      @nullnull_not_eq_null  2 года назад +1

      좋은 평가 감사합니다. 개별적인 이론이 머리에서 합쳐진 모양입니다. 좋은 현상입니다. ^^

  • @vitamaxdh
    @vitamaxdh 2 года назад +2

    외울때 FPS 게임 생각하면 쉽게 외워진다고 어디서 들은거같네요 ㅎㅎ
    좋은 강의 감사합니다!!

    • @nullnull_not_eq_null
      @nullnull_not_eq_null  2 года назад

      아, 그런 방법도 있나보네요! 몰랐습니다. 한 번 알아보도록 해야 겠네요. 정보 감사합니다. 열공하세요. ^^

  • @강인욱-k8n
    @강인욱-k8n 2 года назад +1

    네트워크 강의 잘 듣고있습니다. 꾸준히 공부할수 있도록 노력하겠습니다!

    • @nullnull_not_eq_null
      @nullnull_not_eq_null  2 года назад +1

      바로 그거죠!! 꾸준히 하루 2~30분만 투자하시면 인생 달라집니다!! 열공하세요. ^^

  • @lavita6928
    @lavita6928 Год назад

    강의들으면서 엄지척 했습니다 머리에 잘 안 그려지던 개념이 이제야 맞춰지네요

    • @nullnull_not_eq_null
      @nullnull_not_eq_null  Год назад

      좋은 평가 감사합니다. 조각난 이론들을 잘 조립만 하시면 될 것 같네요. ^^

  • @andodesjoke8742
    @andodesjoke8742 2 года назад +1

    좋은 강의 잘 들었습니다. 감사합니다.

  • @갈가마구
    @갈가마구 2 года назад

    이건 볼때 마다 헷갈렸는데, 오늘 한번더 기억 하려고 노력해 봅니다.
    감사합니다.

  • @0311pjs
    @0311pjs 2 года назад

    훌륭한 강의 잘 듣고 갑니다.

    • @nullnull_not_eq_null
      @nullnull_not_eq_null  2 года назад

      좋은 평가 감사합니다. 널리 알려주시면 더 고맙겠습니다. ^^;;;

  • @qaztrewqaz9960
    @qaztrewqaz9960 2 года назад

    세그맨테이션 할때, 패킷들의 순서들에 대한 정보들도 같이 패킷하나하나에 부여되어서, 나중에 받았을때 재 정렬이 된다고 할수도 있나요? 혹은 패킷이 유실되었는지 확인한다든지.

    • @nullnull_not_eq_null
      @nullnull_not_eq_null  2 года назад +1

      네, 맞습니다. 조금 더 정확히 이야기 하자면 32비트 부호가 없는 정수형(TCP 헤더 Sequence number)으로 처리합니다.

  • @신윤식-d3q
    @신윤식-d3q 2 года назад +1

    강사님! 4계층의 데이터 단위를 흔히 Data/Message라고 책에는 적혀있는데, Data/Message를 Stream형식으로 처리한다고 해서 Stream이라고 알려주시는 건가요?

    • @신윤식-d3q
      @신윤식-d3q 2 года назад

      ko.wikipedia.org/wiki/%EB%8D%B0%EC%9D%B4%ED%84%B0_%EC%8A%A4%ED%8A%B8%EB%A6%BC
      책에서 나오는 Data라는 말이 위의 Data Stream을 줄인말일까요?

    • @nullnull_not_eq_null
      @nullnull_not_eq_null  2 года назад

      네, 그렇게 보는 것이 맞겠습니다. 다만 4계층(전송계층)이 TCP인 경우 Segment라고 부릅니다. 5계층 이상에서 다루는 Data stream을 자른 것입니다. 참고하시기 바랍니다. ^^

  • @안성현-i8j
    @안성현-i8j 2 года назад +1

    스트림이 세그먼트로 변환하는 과정처럼 세그먼트->패킷, 패킷->프레임으로 변환하는 과정에서도 데이터 자르기가 시행되나요?

    • @nullnull_not_eq_null
      @nullnull_not_eq_null  2 года назад +2

      세그먼트로 만들 때만 잘리는 것이고 그 다음부터는 포장을 한 번씩 더 하는 것입니다. 참고하세요. ^^

  • @django3861
    @django3861 2 года назад +1

    네트워크 기초 이론 완강 스터디
    7강 시청 완료 / 5월 5일 / 집

  • @kyoungnampark9230
    @kyoungnampark9230 Год назад

    캄사합니다!

  • @김도지-w6z
    @김도지-w6z Год назад

    명강의 감사드려요

  • @user-fo2zs9vf7d
    @user-fo2zs9vf7d 2 года назад

    안녕하세요 강사님 mss가 1460바이트 라고 들었는데 어디서는 1480바이트로 ip헤더를 뺀 나머지 페이로드 사이즈로 단편화가 된다고 들었습니다. 너무 헷갈리는데 제가 질문한 저 둘이 다른것이라면 어떻게 다른지 알고싶습니다...!

    • @nullnull_not_eq_null
      @nullnull_not_eq_null  2 года назад

      IP 패킷 단편화는 4계층 헤더가 TCP든 UDP든 상관하지 않고 일어납니다. 즉, MSS와 상관이 없다고 생각하면 되겠습니다. MSS는 L4 TCP에서 논하는 것이죠. 관련이 없다고 할 수는 없겠으나 분리해 판단하는 것이 바른 이해에 도움이 되리라 생각합니다.

  • @노민준-i5w
    @노민준-i5w Год назад

    좋은 영상 감사합니다

  • @넌할수이써
    @넌할수이써 Год назад

    커널(=명령어해석기)을 인터페이스 한게 파일= 소켓이라고 설명을 하시는데 “인터페이스”를 뭐라고 정의해야할지 감이안오는데 라우터를 이정표라고 표현하신거처럼 쉽게표현할 단어가있을까요? ㅠㅠ

    • @nullnull_not_eq_null
      @nullnull_not_eq_null  Год назад

      커널은 명령어 해석기가 아닙니다. 커널은 운영체제를 이루는 핵심 요소들을 몽땅 묶어 표현한 것이라 하겠습니다. 인터페이스란...서로 다른 둘을 이어주는 접점 자체를 의미합니다. 대표적으로 USB 같은 것이 있겠습니다. 모양에 따라 타입 A, C로 나누기도 하지요. 그러니까 비유하자면...단자 생김 정도로 이해하시면 어떨까 싶습니다. 참고하시기 바랍니다. :)

    • @넌할수이써
      @넌할수이써 Год назад

      에공 아침부터 답변 감사드립니다.. 이론을 배울때 커널=명령어 해석기로 배워서 그런줄 알았는데 새로운걸 또 얻어갑니다 감사드려요!

    • @nullnull_not_eq_null
      @nullnull_not_eq_null  Год назад

      @@넌할수이써 도움이 됐다면 다행이네요. :)

  • @나서스연구원
    @나서스연구원 2 года назад

    sagment를 만들때 MTU보다 작은 크기로 sagment를 만들면 sagment에서 packet을 만드는 과정에서는 쪼개지는 과정이 없이 붙기만 하겠군요? 그러면 MSS는 몇바이트 인가요?

    • @갈가마구
      @갈가마구 2 года назад +1

      MTU 가 1500 이니까
      segment 단위도 1500 아닐까요? 최대 사이즈와 이더넷이라는 가정이라면...

    • @nullnull_not_eq_null
      @nullnull_not_eq_null  2 года назад +4

      MTU는 1500, 옵션이 없을 경우 TCP/IP 헤더 각각 20바이트 따라서 특별한 이유가 없다면 MSS는 1500 - 40 즉, 1460입니다. 그리고 두 통신주체간 협의(3-way handshake)간에 결정됩니다.

    • @junyoungpark7742
      @junyoungpark7742 2 года назад

      궁금했는데 감사합니다

  • @prettylog
    @prettylog 10 месяцев назад

    선생님 와… 어떤 분이신 겁니까…

    • @nullnull_not_eq_null
      @nullnull_not_eq_null  10 месяцев назад +1

      좋은 의미로 이해하겠습니다. 고맙습니다. :)

    • @prettylog
      @prettylog 10 месяцев назад

      @@nullnull_not_eq_null 설명을 잘 해주셔서요. 감사합니다 🙏

  • @jeongseup
    @jeongseup 2 года назад

    감사합니다!

  • @zaely_o
    @zaely_o 11 месяцев назад

  • @django3861
    @django3861 2 года назад +1

    커널을 추상화 한 것을 파일>소켓이라고 말한다!

    • @nullnull_not_eq_null
      @nullnull_not_eq_null  2 года назад +3

      조금 더 정확히는 커널을 이루는 구성요소 중에서도 '네트워크 프로토콜(보통 TCP나 UDP)' 요소에 대한 추상화된 인터페이스가 '소켓'이다...라고 하시면 되겠습니다. ^^