본문 바로가기
반응형

Computer Science/Network11

[Web] 이메일프로토콜 | SMTP ,POP3, IMAP 2021.04.18 - AWS What's new 뉴스레터2 | 이메일 전송 사전준비 및 이해 이메일전송기능을 찾다가 알게된 용어들을 조금더 찾아보았다. 이들은 이메일을 주고받는 프로토콜의 종류들이다. 이메일시스템의 구조 우선, 이메일이 어떻게 전달되는지부터 보아야한다. 크게 메일서버와 클라이언트로 구성된다. 메일서버 위의 그림에서 A,B,C에 해당된다. 이 서버에는 메일주소에 대응하는 Mailbox가 있다. 이건 메일을 주고받는 통?같아서 주고받기 위해 모아두는 곳이다. 예를들어 PC1이 메일을 보내면, 이 이메일은 우선 A메일서버에 도착한다. 그리고 인터넷을 통해서 A메일서버에서 B메일서버로 연결되서 메일이 전달이 된다. B메일서버에 도착한 메일은 PC2에게 전달이 된다. 메일클라이언트 메일의 Mai.. 2021. 4. 18.
[Web] CORS 이슈 | setAllowOrigins Preflight Request 개발하다가 몇시간째 헤맸던 CORS 이슈..도대체 무엇이였나?! 나의 경우는 서버는 localhost:8080번에서 실행하고 있었는데, 리액트는 localhost:3000에서 실행하고 있었다. 나는 단순히 api서버와 통신해서 데이터를 받아오는거니까 별 문제 없다고 생각했는데 웹화면에서 CORS이슈를 만났다. 결론부터 해당오류의 해결방법은 이랬다. 하지만 단순하게 문제와 해결로 넘어가는게 아니라 더 자세하게 알아보기로 했다. CORS란? Cross Origin Resoure Sharing의 약자로 클라이언트와 서버의 오리진(origin)이 다를때 발생하는 이슈이다. CORS관련 이슈는 모두 CORS정책을 위반했을때 발생하는 것이라고 한다. 오리진(origin)이 무엇이길래? 서버의 위치를 나타나는 URL.. 2021. 4. 14.
[Web] Http통신 vs Socket통신 (WebSocket) 네트워크를 통해 서버로 데이터를 가져오기 위한 통신방법 http통신, socket통신 1.Http 통신 Client의 요청이 있을때만, 서버가 응답해서 정보를 전송하고, 곧바로 연결을 끊는 방식 즉, Client가 요청을 보내고 server가 응답하는 단방향통신 (연결상태유지x : stateless) 실시간이 아니라 필요한경우에만 server로접근하는 콘텐츠위주의 데이터를 사용할때 용이 예를 들어 블로그에 들어오는 상황 웹브라우저(Client)가 웹서버로 글에 대한 내용을 보내달라고 요청을 해서, 서버가 전달해주고, 바로 연결종료하는 http통신방식 2.Socket 통신 Client와 Server가 특정port을 통해 연결을 성립하고 있어서, 실시간으로 양방향 통신을 하는 방식 Client가 Server.. 2021. 4. 6.
[NetWork/Web] HTTP통신 VS 소켓통신 HTTP 통신 Hyper Text Transfer Protocol , Hyper Text를 전송하기 위한 프로토콜 기본구조 : 요청(Request)'과'응답(Response)' 클라이언트가 서버에 요청을 보내면, 그에 맞는 응답 결과를 돌려주고, 클라이언트는 사용자에게 서버로부터 응답받은 결과를 보여주는 것 특징 : Connection이 계속 연결이 되어 있지 않음(stateless) 클라이언트가 서버에 요청을 보내고 응답을 받으면, 그것으로 통신이 종료(Connection Close) 접속을 Client의 요청(Request)이 있을 때만 서버가 응답(Response)하고, 해당 정보를 전송하고 나면 곧바로 연결을 종료하는 방식 서버의 부하를 줄여서 다른 접속을 원활하게 처리하기 위해 응답을 제공하면 .. 2020. 4. 11.
[NetWork/Web] HTTP 동작방식(웹브라우저-웹서버) IP/TCP/HTTP 1. 사용자가 URL주소 입력 2. DNS서버에 의해 IP주소 찾음 IP : 각각의 패킷을 상대방에게 전달하는 역할 IP주소: 컴퓨터 네트워크에서 장치들이 서로 인식하기 위한 특수번호 이 번호를 이용해서 누가 보냈고, 누가 받아야하느지 식별해서 데이터를 전달한다(변경가능) MAC주소 : 네트워크 인터페이스에 할당된 고유 식별자(변경불가) ARP(Address Resolution Protocol : 주소 결정 프로톸톨)을 이용해서 통신을 한다. 데이터를 보낼 목적지를 MAC주소를 사용해서 찾아감 3. 웹서버와 TCP연결시도 TCP : Transmission Control Protocol 데이터를 패킷으로 분해하고, 정확하게 도착했는지 확인하는 역할 3-way-handshaking : 클라이언트와 서버간에 .. 2020. 4. 11.
[NetWork] TCP/IP 프로토콜과 OS 7 Layer 프로토콜 : 컴퓨터간 정보(데이터)를 주고받을 때의 통신방법에 대한 규칙과 약속 TCP/IP TCP규약과 IP규약을 합친 웹 상에서만 사용하는 규칙 TCP는 데이터 전달을 관리하는 규칙 데이터를 작게 나누어서(패킷으로 만들어서) 한쪽에서 다른쪽으로 옮기고, 이를 다시 조립하여 원래의 데이터로 만드는 규칙 *패킷 : 인터넷에서 정보를 전달하는 단위 즉, TCP는 패킷을 만들고, 패킷확인하고, 전송하는 기능 IP는 인터넷상의 주소 규칙 인터넷상에 연결된 모든 컴퓨터의 위치를 지정하는 규칙 *사용할 수 있는 인터넷 주소가 이제 고갈되서 IPv4 -> Ipv6 사용중 TCP/IP 4 Layer vs OSI 7 Layer 비교 OSI 7 Layer은 시스템의 연결을 위한 모델, TCP/IP 4 Layer는 웹서비.. 2020. 4. 10.
[NetWork/Web] HTTP 상태코드 정리 Status Code 2xx 코드 : 성공응답 200 : ok, 정상 204 : No Content, 삭제에 대한 응답코드 206 : Range, 헤더를 지정한 요청에 대한 응답코드 3xx 코드 (Redirection 응답) : request가 완료하기 위해서 추가 동작필요 301 : Moved Permanently 영구적으로 URI가 변경됨 302 : Found 일시적으로 URI가 이동됨 304 : Not Modified, 변경없음 307 : Temporary Redirect, 임시적인 redirect 4xx 코드 (클라이언트 오류) : Client가 보내는 error response 400 : bad request, 잘못된 요청 원인 : 클라이언트가 잘못된 형식의 요청을 전송, 그래서 서버가 이 요청을 이해할 수 없음 4.. 2020. 3. 23.
[NetWork] 동기(sync) vs 비동기(async) 데이터를 받는 방식의 차이점 동기식(synchronous) 요청과 결과가 한자리에서 '동시에' 일어난다. 요청을 하면 바로 시간이 얼마나 걸리던지 요청한 자리에서 그 결과가 나타남 작업처리시간이 같다. (추구하는 목적이 같아서) 장점 : 설계가 간단하고 직관적 단점 : 결과가 주어질때까지 아무것도 못하고 대기해야함 예시 : 계좌입출금 --> A에서 B로 송금할때 A에서 돈이 빠져나가고 B에 돈이 들어오는게 동시에 일어나야함 비동기식(asynchronous) 요청과 결과가 동시에 일어나지 않음 요청을 하면 요청한 자리에서 결과가 나타나지 않음 작업처리 시간을 동시에 맞추지 않아도 됨(추구하는 목적이 달라서) 장점 : 결과가 주어지는데 시간이 걸리더라도 그 시간동안 다른 작업 할 수 있음 단점 : 동기식보다.. 2020. 1. 25.
[NetWork/Web] 쿠키와 세션차이점 (+캐시) 쿠키 : 사용자의 브라우저에 저장 http통신을 할 때 http 헤더에 포함된 파일들 (이름 값 만료기간, 경로정보) 해당 사용자의 컴퓨터를 사용하기만 하면 쿠키에 입력된 값을 쉽게 확인할 수 있음->보안성낮음 클라이언트->서버 : request 서버->클라이언트 : 쿠키가 없음, 통신상태를 저장한 쿠키 response 클라이언트가 이 정보를 저장하고 있음 ->쿠키 다음 연결부턴 클라이언트->서버 : 쿠키를 넣어서 요청 세션 : 서버에 저장되는 쿠키 클라이언트와 서버의 통신상태, 중요한 데이터들 저장 브라우저를 종료할때까지 유지됨 서버에 직접 저장되서 보안성이 높음 -->로그인정보유지에 사용되는 정보 클라이언트->서버 : 세션id발급 서버->클라이언트 : 세션id를 쿠리를 이용해서 저장 클라이언트가 다시.. 2020. 1. 17.
[NetWork/Web] get방식 vs post방식 차이점 HTTP 웹상에서 클라이언트와 서버간에 요청/응답으로 데이터를 주고받는 프로토콜 클라이언트가 HTTP 프로토콜을 통해서 서버서에 요청을 보내면 서버는 요청에 맞는 응답을 클라이언트에게 전송한다. 이때 HTTP메소드 : 서버가 요청을 수행할 행동 그 중 하나인 GET방식 POST방식 공통점 클라이언트와 서버간에 요청/응답을 주고받는 메소드 중 하나 HTTP프로토콜을 사용하여 웹페이지->서버로 정보를 전송하는 방식 GET 방식 URL의 끝에 전송할 데이터의 파라미터를 붙여서 서버로부터 정보를 요청 요청을 전송할때 필요한 데이터를 쿼리스트링을 통해 전송 서버로부터 정보를 '조회'할때 사용 사용예시 : 로그인 -> 로그인정보를 서버에 select하는 용도, 전송해서 일치하는지 확인 EX) www.example-.. 2020. 1. 17.
728x90