231130 엘리스 트랙 듣기
* 네트워크 / PORT / DNS / 서버와 클라이언트 / TCP와 UDP / HTTP / HTTP 메시지 / 기타 프로토콜 / 보안 에 대해 배운 것
[PORT]
- 포트번호에서 127.0.0.1 은 자기자신 (Localhost)를 의미 !
- netstat 명령어를 이용해 포트번호를 확인할 수 있다 !
[서버와 클라이언트]
- 서버는 응답하는 호스트, 클라이언트는 요청하는 호스트 !
[TCP / UDP]
- TCP는 안정성이 높은 통신을 가능하게 해줌
- 통신을 시작할때는 3-Way Handshake를 하고, 통신을 종료할때는 4-Way Handshake를 한다 ! < TCP에서 >
- UDP는 신뢰성은 낮지만 속도는 빠름
[HTTP]
- HTTP 메세지는 클라이언트/서버 모델을 따른다 !
- HTTP 특징 : 무상태, 비연결성
- HTTPS는 HTTP에 S(secure)이 붙은것으로, 보안을 강화한 프로토콜이다 !
[HTTP 메시지]
- HTTP 구조 : Start Line / Header / Black Line / Body 로 구성
- HTTP 요청 메시지 > Start Line > HTTP Method : 요청의 의도 (GET : 자원을 읽는 요청, POST : 새로운 자원의 생성, PUT : 존재하는 자원에 대한 수정, DELETE : 존재하는 자원을 삭제)
[기타 프로토콜]
- SMTP > 이메일 클라이언트 : ex) gmail, naver mail
- FTP도 TCP를 사용하여 연결된다 ! 그래서 3-Way Handshake 방식으로 연결됨 !
- SSH는 데이터 전송 과정에서 데이터를 암호화하기 때문에 보안이 뛰어나다 !
- POP3와 IMAP은 메일을 수신할때 사용하는 프로토콜이지만 POP3에 저장한 메일은 제3자가 해당 메일을 확인할 수 없지만, IMAP를 이용하여 받아온 메일은 제3자가 확인할 수 있음 !
[보안]
- 현재 대부분의 SSL이 TLS로 대체되어 사용되고 있음 !
- 쿠키는 클라이언트에 저장되는 데이터 파일 > 개인정보가 탈취될 위험성이 있음
- 세션은 데이터를 서버측에 유지 > 보안성은 높지만 부하가 걸릴 가능성이 있음
- HTTP는 stateless하기 때문에 상태를 저장하지 않는다 !
- 쿠키나 세션을 이용하는 것보다 JWT를 사용하는것이 보안성과 확장성 면에서 더 우수함 ! BUT 암호화되어 있지는 않음 !
* JS에 대해 배운 것
[JS의 구조]
- HTML : 구조, CSS : 꾸며줌 , JS : 동적인 효과
[JS의 변수]
- console.log();는 변수 안에 데이터를 확인할 때 사용하는 명령어
- 변수의 데이터를 웹 화면에 출력할 때 사용하는 명령어 : document.write(변수명);
- document.write();는 공백없이 출력 / document.writeln();은 공백 넣어서 출력
[JS의 데이터타입]
- 문자열 주의사항 : var str = "He's a boy" 로 사용하거나 var str = 'He\'s a boy'로 사용해야 오류가 나지 않음
- 객체 데이터타입 > 프로퍼티 : 이름을 가지고 있는 데이터들, 객체가 가지고 있는 데이터 / 메서드 : 이름을 가지고 있는 함수들 , 객체가 가지고 있는 함수
내일도 화이팅이닷 !