CS/네트워크

네트워크 - 정리

개발 일기92 2024. 6. 20. 12:33

1. TCP 

  • 송신부와 수신부의 연결을 확인하는 연결형 서비스
  • 가상 회선 패킷 교환 방식 사용.(패킷이 전달되는 회선이 정해져 있음)
  • 데이터 손실이 없음을 보장. 신뢰성 높음
  • 연결 시 3way핸드셰이킹, 해제 시 4way핸드셰이킹 함.
  • 신뢰성 보장 방법
    • 흐름 제어 : 송-수신부 간 데이터 처리 속도 제어
    • 혼잡 제어 : 송신부 데이터 전달 속도와 네트워크 속도 차이 해결
    • 오류 제어 : 데이터의 오류 검출 및 재전송

2. UDP

  • 비연결형 서비스(송-수신부의 연결이 보장되지 않음)
  • 데이터그램 패킷 교환 방식 사용(패킷이 서로 다른 회선으로 교환 될 수 있음)
  • 데이터의 신뢰성 낮음
  • 체크섬 필드를 이용해 최소한의 오류 검출 가능

3. HTTP 

  • 인터넷에서 데이터를 전송하기 위한 클라-서버 구조의 통신 프로토콜
    • 비연결성 : 서버에서 응답을 받으면 연결을 끊음
    • 무상태: 서버가 클라이언트를 식별하지 못함
  • 쿠키와 세션을 통해 비연결성과 무상태 단점 보완
    • 쿠키 : 클라 로컬에 저장되는 키,값이 들어 있는 작은 데이터 파일
    • 세션 : 서버에 저장되는 연결 관련 정보

4. HTTPS

  • SSL/TLS를 이용해 HTTP의 보안을 강화한 프로토콜
  • SSL은 전송, 응용 계층 사이에 있는 보안을 위한 통신 계층이다.

5. TCP Keep Alive, HTTP Keep Alive

  • TCP Keep Alive : 연결된 세션을 계속 유지하기 위한 방식. 일정 시간 동안 패킷 교환이 없으면 연결 유지 여부를 확인하는 패킷을 보냄
  • HTTP Keep Alive : 일정 시간 동안 연결을 유지하는 방식. 정해진 시간이 끝나면 연결 해제.

6. REST

  • URI로 자원을 명시. HTTP메서드로 CRUD연산을 하는 SW아키텍처
  • HTTP 프로토콜을 사용하므로 별도 인프라 구축할 필요 없음, HTTP 따르는 모든 플랫폼에서 사용가능
  • 사용 가능한 메서드가 한정적임.
  • 구성 요소
    • 자원 : URI를 이용해 클라이언트에서 서버로 자원 조작 요청 가능
    • 행위 : HTTP메서드로 자원에 대한 연산을 수행하게 함
    • 표현 : json, xml로 데이터 주고받음

7. HTTP 메서드

  • POST : CREATE, 데이터 생성
  • GET : READ, 데이터 조회
  • PUT : UPDATE, 데이터 갱신
  • DELETE : DELETE, 데이터 삭제

quiz)

1. TCP 특징?

2. TCP 연결 및 해제 과정?

3. TCP에서 데이터의 신뢰성을 보장하기 위한 방법?

4. UDP 특징?

5. TCP, UDP 차이점

6. UDP 오류 검출 방법

7. HTTP?

8. HTTP Keep Alive / TCP Keep Alive?

9. 쿠키와 세션의 ㅏ이점

10. HTTP/ HTTPS 차이점

11. HTTPS에서 사용하는 암호화 방식

12. URL입력 후 화면 출력까지의 과정

13. REST의 장단점

14. GET에 바디를 넣어 보내면 나타날 결과?

15. POST와 PUT의 차이점

 

'CS > 네트워크' 카테고리의 다른 글

네트워크 - REST  (0) 2024.06.19
네트워크 - HTTP/S  (0) 2024.06.19
네트워크 - OSI 7계층, TCP/IP, TCP/UDP  (0) 2024.06.19