OSI 7 Layers 와 TCP/IP Model[수정필요]

김기용·2020년 12월 26일
0
post-thumbnail

🤔 TCP/IP updated 모델

현대 인터넷은 TCP/IP updated 모델을 사용한다.
OSI 7 Layer 의 목적은 이질적인 시스템간 상호 접속을 위해 공통적인 기반을 제공하는데 있다. 네트워크 구조를 이해하는데 도움이 되기때문에 꼭 집고 넘어가자.OSI 7 Layers는 참고만 하자.
하지만 지금은 TCP/IP update 모델이 사용되고 있다.



🤔 무엇이 달라졌나?!

TCP/IP updated model 로 대체 되면서 OSI 의 상위 계층(application, presentaion, session)이 application 계층 하나로 통일 되었다.

🕹 [Applicatoin + Presentation + Session] -> [Application]


🤔5. APPLICATION LAYER(TCP/IP UPDATED)

TCP/IP 소켓 프로그래밍

소켓 프로그래밍을 사용해 세션계층부터 응용계층까지의 기능은 사용자 프로그램이 구현한다.

운영체제의 Transport Layer에서 제공하는 API를 활용해서 통신 가능한프로그램을 만드는 것을 TCP/IP 소켓 프로그래밍, 또는 네트워크 프로그래밍 이라고 한다.

소켓프로그래밍 만으로도 클라이언트, 서버 프로그램을 따로따로 만들어서 동작 시킬 수 있고 누구나 자신만의 application layer 인코더 디코더를 만들 수 있다.

  • 암호화, 압축, 인코딩, 디코딩, 통신회선 구축

🤔 4. Transport Layer

네트워크 종단(end point) 시스템 간의 데이터를 일관성 있고 투명한 데이터 전송을 제공할 수 있도록 두 종단간(end to end)에 오류 복구와 흐름 제어를 제공한다.

받은 데이터를 무슨 프로세스에게 주어야할지.. ?? 어떻게 컴퓨터가 알 수 있을까..? 포트번호는 하나의 컴퓨터에서 동시에 실행되고 있는 프로세스들이 서로 겹치지 않게 가져야하는 정수 값이다.

그래서 송신자는 데이터를 보낼 때 데이터를 받을 수신자 컴퓨터에 있는 프로세스의 포트번호를 붙여서 보내줘야한다.

어디에 구현되어있나?

운영체제 커널에 구현되어있다.


🤔 3. Network layer

상대방의 IP 주소를 알고 있어야 데이터를 보낼수 있다.
데이터에 IP주소를 붙여준다. 패킷이 만들어 졌다!
첫번째 라우터가 패킷을 받아서 패킷을 열어보고 아이피 주소를 보고 연결된 컴퓨터에 해당 ip 주소가 없으면 다시 패킷으로 포장한다음에 다음 라우터에 넘긴다.

만약 라우터가 여러개라면 ?? 라우터의 원리를 공부해야된다...

많은 네트워크들의 연결로 이루어지는 inter_network 속에서 IP주소를 이용해 길을 찾고(routing) 자신의 다음의 라우터에게 데이터를 넘겨주는것이(forawrding)

어디에 구현 되어 있나 ?

운영체제의 커널에 소프트웨어적으로 구현되어있다.

통신 시스템 간의 경로를 선택하는 기능. 통신 트래픽의 흐름을 제어하는 기능

  • 패킷 정보 전송
  • 정보 교환 및 중계 기능
  • 경로선택 기능
  • 트래픽 제어 기능
  • 네트워크 연결 관리
  • 체증 제어

여러대의 컴퓨터가 동시에 데이터를 보낸다면 데이터를 어떻게 끊어읽느냐에 따라서 데이터의 원본이 훼손될수도 있다.
송신자는 데이터의 앞뒤에 특정한 비트열을 붙인다. 이것이 framing!!!!!

여러 대의 컴퓨터가 통신하려면?
더미 허브

하나의 네트워크 안에 스위치.
스위치(똑똑한 상자:더미 허브?): 전송한 데이터의 목적지를 찾아 목적지에만 데이터를 보내주는것.
네트워크와 네트워크를 연결해주는것: 라우터
해저케이블로 연결되어있다...어머나..

어디에 구현되어 있나 ?

하드웨어에 구현되어있다.바로 LAN카드에!!

MAC 주소, 충돌방지 시스템 등

  • 오류제어(검출,회복) 흐름제어
    프레임 동기(BASIC 동기, HDLC 동기, SDLC 동기)
  • 신뢰성 있고 효율적인 프레임 데이터 전송
  • 링크의 효율성 향상(CSMA/CD, Token-Bus, Token-Ring)
  • 전송 제어 기능
  • 매체 엑세스 제어(MAC)

🤔 1. Physical Layer

0과 1을 주고 받는다.
0과 1의 나열을 아날로그 신호로 바꾸어서 전선으로 흘려보내고(encoding) 아날로그 신호가 들어오면 0과 1로 해석(decoding)해서 읽는다. 0과 1의 나열을 주고받게 해주는 모듈(module)

어디에 구현되어있나 ?

전부 PHY칩으로 이미 만들어져 있다.. input output만듬..

  • 디지털 신호를 전기 신호로 전송하는 계층, 회선사용, 부호화 결정, 전기신호를 어떻게 만들어서 보낼건지, 데이터를 동기 , 비동기로 읽을 것인지.

  • 전송 매체와 전송 신호를 엑세스하기 위한 기계적, 전기적, 기능적, 절차적 특성을 규정짓는 최하위 계층이다.

  • 기계적, 전기적, 기능적, 절차적 기능을 정의한다.
    통신케이블, 전송 신호 방식, 물리적 장비를 정의한다.


encapsulation

송신자가 데이터를 보낼때 계층을 거쳐서 보내는 방식


decapsulation

수신측에서 받은 데이터를 확인하는 절차


refernece

https://www.youtube.com/watch?v=Fl8MkOYTc20
https://www.youtube.com/watch?v=1pfTxp25MA8

profile
매일 새로운 배움을 통해 꾸준히 성장하는 것을 목표를 두고 있습니다. 논리적인 사고로 문제해결 하는것에 희열을 느끼고 언젠가 제가 만든 결과물들이 사람들에게 편이를 제공하며 사용되는 날을 간절히 소망하고 있습니다. 🙏

0개의 댓글