코드스테이츠 14주차 -[네트워크] 심화 / [Git] 브랜치 관리와 고급 기능 / [배포] Amazon Web Service / [배포] Docker

엄혜진·2021년 9월 19일
0

CodeStates

목록 보기
14/15
post-thumbnail

HA3 전의 마지막 파트를 공부했다. 배포나 git은 section1, 2에서 가볍게 공부했던 부분들에 대해 조금 더 깊게 배운 것 같다. 백 앤드는 공부하면 할수록 정말 신기한 것 같다. 정확하게 형체화되어 있지 않기에 제대로 알지 못하면 문제가 크게 발생할 것 같지만, 현재까지는 재밌고 신기하다. 더 깊은 내용들을 공부하게 된다면 머리가 약간 깨지겠지만 아직은 버틸만하다.
추석 연휴로 일주일간 휴식을 취하는 기간인데 며칠은 아무것도 하지 않고 쉬어야 될 것 같다. 활력소가 필요한 느낌이랄까🤤 시험을 얼마 안 남긴 상태기도 하고 이제 HA3를 통과하게 된다면 프로젝트에 바로 들어가게 되는 것을 아니까 마음이 약간 붕 뜬 느낌이다. 며칠간은 붕 뜬 현재 상황에서 공부해 봤자 효율성이 떨어지기 때문에, 억지로 외면하지 않고 아무것도 하지 않은 상태로 쉬고 수업에 들어가기 전에 다시 집중력을 발휘해야겠다👊


14주차 배운 내용 중 정리하고 싶은 내용

[네트워크] 심화


  • IP(인터넷 프로토콜) : 주소를 컴퓨터에 부여하여 이를 이용해 통신. 지정한 IP 주소에 패킷이라는 통신단위로 데이터 전달

[IP프로토콜 한계]

1. 비연결성: 패킷을 받을 대상이 없거나 서비스 불능 상태여도 패킷 전송
   
2. 비신뢰성: 중간에 패킷이 사라질 수 있음. 패킷의 순서를 보장할 수 없음

TCPUDP
연결지향 - TCP 3 way handshake
(가상 연결)
비연결 지향형 프로토콜
전송순서보장전송순서 보장하지 않음
데이터 수신 여부 확인함데이터 수신 여부 확인하지 않음
신뢰성↑, 속도↓신뢰성↓, 속도↑,


[HTTP]


HTTP/1.1, HTTP/2TCP기반, HTTP/3UDP 기반 프로토콜
클라이언트 서버 구조

무상태프로토콜(Stateless)
  => 서버가 클라이언트의 상태를 보존하지 않음(서버확장성↑ but, 클라이언트가 추가 데이터를 전송해야함
                            	   => 브라우저쿠키, 서버세션, 토큰 등을 이용해 상태를 유지)

비연결성(Connectionless)
  => 연결을 유지하지 않는 모델. 현재는 HTTP 지속연결로 문제 해결






[HTTP 헤더와 바디]


HTTP바디는 메세지본문(message body)을 통해 표현 데이터를 전달
메세지 본문 = 페이로드(payload)
표현은 요청이나 응답에서 전달할 실제 데이터를 뜻함

헤더 형식 <field-name>:<field-value>
  
HTTP헤더는 HTTP전송에 필요한 모든 부가정보를 담기 위해 사용 
  => 메세지 body의 내용, body의 크기, 압축, 인증, 요청클라이언트, 서버정보

표현헤더는 요청, 응답 둘 다 사용
  - Content-type: 표현데이터의 형식
  - Content-Encoding: 표현데이터의 압축방식
  - Content-Language: 표현데이터의 자연언어
  - Content-Length: 표현데이터의 길이	*Transfer-Encoding 사용 시 chunked의 방식 사용하기에 사용 불가*






[HTTP 주요헤더]


요청(Request)에서 사용되는 헤더 

  -From: 유저 에이전트의 이메일 정보
  
  -Referer: 이전 웹페이지 주소
  
  -User-Agent: 유저 에이전트 애플리케이션 정보
  
  -Host: 요청한 호스트 정보(도메인) => 필수헤더

  -Origin: 서버로 POS요청을 보낼 때, 요청을 시작한 주소를 나냄 
    *요청 보낸주소와 받는 주소가 다를 경우 CORS에러 발생*
      
  -Authorization: 인증 토큰(JWT)을 서버로 보낼 때 사용하는 헤더

  

  

응답(Response)에서 사용되는 헤더 

  -Server: 요청을 처리하는 ORIGIN 서버의 소프트웨어 정보
  
  -Date: 메세지 발생한 날짜, 시간
  
  -Location: 페이지 리디렉션
  
  -Allow: 허용가능한 HTTP 메서드

  -Retry-After: 유저에이전트가 다음 요청을 하기까지 기다려야하는 시간
  
  
  
    *콘텐츠 협상 우선순위*
      Accept-Language: ko-KR, en-US; q=0.9 => 1부터 0까지 우선순위 부여(1은 생략가능)
     

0개의 댓글