네트워크 및 클라우드

TCP/IP로 배우는 네트워크 1

후리붜너 2023. 1. 19. 12:42

나는 원래도 CS지식이 부족하지만... 학부시절 네트워크, 컴퓨터 구조 강의를 듣지 않아 더 약하다.... ㅠㅠ

 

이런 약점을 보완하기 위해 유튜브에서 진짜 진짜 엄청 많은 강의들을 찾아봤는데 나에게 맞는 강의가 없었고 이해가 쉬운 강의를 찾기 어려웠다..

 

다행히 널널한 개발자 채널에서 강사분이 너무나도 깔끔하게 정리를 해주셔서 이해가 쉬웠다..!

 

이제 이걸로 네트워크를 부숴보게쒀....!!

 

 

네트워크 기초 이론

먼저 강사님이 처음 하셨던 말이 너무 좋았다. 

OSI 7 Layer ? 완전 개념이니 당연히 이해하기 어렵고 지금 이해하려고 하지마라!

 

OSI 7 Layer를 이전에 볼 때부터 너무 개념적인 설명 때문에 이해하기 어려웠는데 다행이었다...

 

대신 외울 것이 생겼다... ㅎㅎ

 

컴퓨터 구조에 따른 네트워크 분류

컴퓨터 구조 자체 지식이 부족하니.. 네트워크 구분도 사실 이해가 잘 가지는 않는다.. ㅠㅠ

 

그래도 얻었던 지식을 나열해보자

 

  • S/W 즉, Kernel 단에서는 Transport와 Network로 구분된다. (개념적)
  • 이 kernel 단에서는 TCP/IP라고 불리는 protocol로 부를 수 있는데, 이 protocol을 user mode의 app으로 추상화할 수 있고 이를 file형태로 추상화할 때 이를 Socket이라고 칭한다. (이게 뭐람?)
  • MAC 주소, IP주소, Port번호를 한번에 식별자라고 칭한다.

솔직히 아직 감이 잡히지 않는다.. 그래서 socket에 대해서 더 알아보기로 했다.

 

Socket

Socket이란 프로세스끼리 데이터를 주고 받을 수 있도록 하는 각 프로세스의 연결 단자라고 한다. 여러 블로그들을 찾아보았는데 대부분의 글에서 '창구'라는 비유를 사용하고 있더라. 

 

결국 Socket(소켓)은 프로세스가 데이터를 서로 주고받을 수 있도록 하는 연결 통로라고 보면 될 것 같다.

 


앗 그리고 네트워크 자체의 개념을 잠깐 짚고 넘어가자면 다음과 같이 정리할 수 있겠다.

네트워크 개념

노드(Node)

노드는 네트워크에서 연결의 대상이 되는 재분배 지점 또는 통신 종단점이라고 한다. 단어가 굉장히 애매모호해서 이해하기 어려울 수 있는데 그냥 그림을 보면 이해가 편하다.

위 사진은 인터넷에서 돌아다니는 네트워크 사진을 가져온 것인데 그림에서 보이는 PC나 switch들이 모두 node에 해당하는 것이고 연결되는 대상이라고 이해하면 편할 것 같다.

 

링크(Link)

연결되는 대상이 Node라면 당연히 연결되는 선이 Link가 되겠다. 그리고 위에서 얘기했던 소켓이 이 링크 부분에 관여하는 것이다.

 

이렇게 막연하게 Network를 입문해보았는데 쉽지가 않다.... 

 

이제 AWS랑도 맞짱떠야하는데 그 전에 네트워크가 발목을 잡네 😤

 


숙제 : Mac 주소 + IP 주소 + Port 번호는 식별자라고 했는데 무엇에 대한 식별자인가??


Reference

https://blog.naver.com/ding-dong/221389847130

 

소켓(Socket) 포트(Port) 뜻과 차이

나도 개발자지만 소켓과 포트의 정확한 의미 차이가 헷갈릴 때가 있어서, 최근에 다시 꼼꼼하게 공부를 했...

blog.naver.com

https://popbox.tistory.com/66

 

[윈도우 네트워크][TCP/IP] 소켓(Socket)이란?

[TCP/IP][네트워크 프로그래밍] 소켓(Socket)이란? 소켓(Socket)의 정의 소켓(Socket)은 1982년 BSD(Berkeley Software Distribution) UNIX 4.1에서 처음 소개되었으며 현재 널리 사용되는 것은 1986년의 BSD UNIX 4.3에서 개

popbox.tistory.com

 

댓글수0