컴퓨터 공학(CS) - 네트워크 (UDP,HTTP,HTTPS,Cookie,Session, 렌더링 과정)

Jamie·2023년 2월 16일
0

컴퓨터 공학

목록 보기
11/13
post-thumbnail

✅ UDP

  • UDP 는 데이터의 효율성을 중요시 하는 데이터 전송 방식입니다.
    • 일반적으로 TCP보다 속도는 빠르지만 데이터 신뢰성이 떨어지기 때문에 속도 때문에 사용하는 것은 지양합니다.
    • UDP 는 헤더도 TCP보다 단순합니다.
  • UDP 의 장점
    • 동영상 스트리밍과 같은 서비스에 많이 사용합니다.
      • 데이터의 유실이 조금 있어도 문제가 없고, 빠른 전송이 필요한 서비스
    • 브로드캐스팅을 지원 합니다.
      • 동일 네트워크에 연결된 모든 컴퓨터에 데이터 송신을 가능하게 하는 것을 브로드 캐스팅이라고 함 (공유기와 같이 PC에 동일하게 네트워크를 보내는 것)

✅ HTTP와 HTTPS의 차이점

차이점을 알기 위해 HTTP와 HTTPS에 대해 간략한 설명 먼저 하겠습니다.

  • HTTP(Hypertext Transfer Protocol)
    • Sever/Client 모델로 1회성 프로토콜 입니다. (이런 프로토콜을 Connectionless라고 함)
    • 1회성 프로토콜이란 RequestRespose로 이루어져 있습니다.
    • HTTP는 TCP를 사용해 데이터를 전송합니다.
  • HTTP 1.1
    • 기존의 HTTP가 개선된 버전입니다.
    • HTTP 1.1은 keep-alive 라는 기능을 통해 데이터를 송수신하는데, keep-alive는 서버에서 설정된 시간 만큼 연결과정(3-way-handshake) 없이 데이터를 주고 받을 수 있습니다.
    • 일정시간이 지나면 4-way-handshake를 통해 연결을 해제합니다.
  • HTTPS(HyperText Transfer Protocol over Secure Socket Layer)
    • HTTP 통신을 할 때, TCP/IP 소켓 통신에서 SSL과 TLS 프로토콜을 통해 데이터 암호화를 하여 송수신합니다.
    • https:// 로 URL이 시작합니다.

즉, 정리하자면 HTTP는 TCP를 열어 보았을 때, 정보가 노출되지만 HTTPS는 SSL과 TLS 프로토콜을 이용하여 데이터를 암호화 합니다.


✅ 쿠키와 세션의 차이점

HTTP는 통신이 끝나면 상태를 유지하지 않습니다.
이를 보안하기 위해 나온 기법이 쿠키와 세션입니다.

  • 작동 방식
    클라이언트에서 정보를 서버로 넘깁니다. ➡️ set-Cookie를 통해 정보를 클라이언트에 다시 보냅니다. ➡️ 클라이언트가 set-Cookie를 Cookie에 담아 서버로 보냅니다.

  • 유효기간

    • expires 설정이 있으면, 로컬 디스크에 저장되고 유효기간 경과시 삭제됩니다.
    • expires 설정이 없으면, 메모리에 저장되고 브라우저 종료시 삭제됩니다.
  • Cookie

    • 쿠키에 개인 정보를 저장하게 되면 보안에 취약하다는 단점이 있습니다.
      • TCP 를 보면 아스키 코드로 되어있어 누구나 정보를 읽을 수 있기 때문에 정보 보안이 어렵습니다. 이 문제를 해결하기 위해 Session 을 사용합니다.
  • Session

    • 쿠키와 작동 방식은 같습니다.
    • 정보를 받으면 임의의 문자로 저장하여 암호화하게 됩니다.

✅ HTTP GET, POST

  • GET : 정보 읽기, 전달이 필요한 파라미터는 URL을 통해 전달됩니다.
    • 만약 ID,PW를 입력하는 input 창이 있으면, URL부분 뒤에 사용자의 ID, PW가 보여지기 때문에 이러한 상황에서는 사용하지 않고 다른 메서드를 이용하여 사용합니다.
  • POST : 정보 입력하기, 절달이 필요한 파라미터는 HTTP body에 포함되어 전달됩니다.
    • HTTP body에 정보를 담아 전달되기 때문에 사용자의 눈에는 보이지 않습니다.

💡 참고

  • PUT : 정보 수정
  • DELETE : 정보 삭제

✅ 웹 브라우저 렌더링 과정과 흐름

프론트엔드 개발자는 꼭 알고 있어야 하는 필수 지식 ❗️

동작 1

  • 웹 브라우저에 입력된 URL은 DNS 프로토콜을 사용해 IP 주소로 변환합니다.
    • DNS 프로토콜 이란 도메인 이름을 IP주소로 변환하는 역할을 합니다. (반대로도 수행함)

동작 2

  • TCP ➡️ IP ➡️ Ethernet을 전기 신호로 변환 후 전송합니다.

동작 3

  • HTML 파일을 파싱하여 DOM tree를 생성하고, CSS 정보도 파싱하여 CSSOM tree를 생성합니다.
    이 과정을 거친 뒤, 두 tree를 기반으로 Render tree가 생성됩니다.

동작 4

  • Render tree을 기반으로 Rendering 되어 사용자의 눈에 보여지게 됩니다.
profile
#UXUI #코린이

0개의 댓글