본문 바로가기

CS(Computer Science)/네트워크

(5)
4. Link Layer(링크 계층) Link Layer는 홉에서 홉까지 사이에서 발생하는 전송 층이라고 생각하면 된다. [MAC(multiple access protocol)] 홉 사이, subnet 안에서는 기본적으로 broadcast medium을 통해 신호가 퍼지기 때문에 충돌이 나지 않게 전송해주는 프로토콜이 필요하다. 그것이 MAC이다. 1. channel partitioning (절대 충돌은 발생하지 않음) TDMA(time division multiple access) : 시간을 나누어 본인의 시간에만 전송하는 방법(한 사람만 전송하는 경우 비효율) FDMA(frequency division multiple access) : 주파수를 나누어 본인의 주파수로 전송한는 방법(안 쓰이는 주파수 낭비) 2. random access(..
3. Network Layer(네트워크 계층) Transport Layer까지는 단말끝에서 발생하는 상황만 생각하면 되었다. 하지만 Network Layer부터는 이제 라우터로 인해 패킷이 전송되는 과정을 알 수 있다. 즉 모든 라우터는 Network Layer의 기능을 보유하고 있다. 라우터들은 ip를 확인하여 목적지까지 패킷들을 전송해야하기 때문에 Network Layer의 기능을 가지고 있다. forwarding -> forwarding table를 보고 패킷을 다음 라우터로 전송하는 과정 routing -> routing algorithm을 이용해 forwarding table를 만드는 과정 - 현재 ip주소는 ipv4를 사용하고 총 32bit이다. - ip주소에는 network주소와 host주소로 표기되며 subnet mask를 이용하여 n..
2. Transport Layer(전송 계층) 기능 multiplexing -> 여러 소켓의 메시지를 하나의 통로로 내려보냄 demultiplexing ->메시지를 분류해서 해당 소켓으로 올려줌(port 넘버 이용) (udp는 destination port 번호만 보고 demultiplexing진행) checksum -> 오류있는지 확인 , 오류 있으면 drop 주요 기능 - reliable data transfer(유실 없이 순서대로 전송)(buffer에 순서대로 저장) -> 재전송, sequence number , timer 등 - flow control -> 상대방의 능력에 맞게 제어 - congestion control -> 네트워크 상태에 따라 제어 - udp기능 모두 포함 -> 단 tcp의 demultiplexing 경우 source ip..
1. Application Layer(어플리케이션 계층) - http 통신은 단방향 연결 , socket 통신은 연결을 지속하는 양방향 연결 Socket : 네트워크에 연결된 장치간의 프로세스끼리 데이터를 송수신 할 수 있게 우체통 역할을 한다. (OS에서 제공하는 인터페이스, system call) -tcp 전용 소켓, udp 전용 소켓이 있음. 1. socket() -> 소켓을 연다, udp 혹은 tcp 선택. 2. bind() -> (주소와 )포트번호를 할당. 3. listen() -> 서버 전용 명시 4. accept() -> 외부로 부터의 메시지를 기다림. 5. read() , write() -> 데이터를 읽거나 씀. 1. socket() 2. connect() -> 상대방의 소켓과 연결,(상대방 ip주소와 port number를 매개변수로) 3. r..
(시작 전에) 네트워크 기본 - 출발지부터 목적지 까지 전용회선을 예약해서 데이터를 보냄 (전용회선으로 데이터 송수신)(ex -전화) - 전용회선 역할이라 다른 사용자가 동시에 사용할 수 없음. -packet이라는 데이터로 쪼개서 데이터를 보냄. -한 선을 여러사용자가 이용할 수 있음. processing delay - 라우터가 패킷을 분류하는 시간 -> 라우터 성능 향상을 통해 개선 가능 queuing delay - 먼저 도착한 패킷들이 빠질 때까지를 기다리는 시간 -> 군중심리에 따라 변해서 개선 힘듦 transmission delay - 데이터가 처음부터 마지막 비트까지 뿜어져 나가기까지 걸리는 시간 -> bandwidth를 늘려 개선 propagation delay - 데이터가 선을 지나가는 데 걸리는 시간(한 라우터에서 다..