웹 개발(Back-end)/java
KH 강의 - 네트워크 프로그래밍
슈비룹바
2023. 6. 7. 17:51
(Java) 네트워크 프로그래밍
날짜: 2022년 8월 23일~26일
네트워크
- Server : 서비스를 제공하는 장비 또는 사람
- Client: 제공되는 서비스를 이용하는 고객
- IP주소:
-네트워크 상에서 각각의 컴퓨터를 특정 지을 수 있는 고유 주소값
-주소가 겹칠 경우, 충돌한다.
- Port 번호:
-컴퓨터 내 특정 서비스를 구분 짓는 고유 번호
-컴퓨터 내에서 사용하기 때문에 각각 0~65535을 사용할 수 있다.
-0~1024 → Well Known port: 사용하는 프로그램들이 너무 많기 때문에 개발을 할 때, 잘 사용하지 않는다.
- TCP / UDP:
-TCP(Transmission Control Protocol): 신뢰성을 중시하고 성능을 상대적으로 경시
데이터 전송 여부 확인 o, 느려도 데이터의 안정성 보장 ex) 메일
-UDP( User Datagram Protocol): 신뢰성을 상대적으로 경시하고 성능을 중시
데이터 전송 여부 확인 x, 빠른 속도이지만 손실 여부 따지지 않음. 빠른 데이터 전달이 목적
- Socket: 네트워크 프로그램이 통신을 수행하기 위해 필요한 논리적 단말기.
실체는 없지만 Ram 속에 전기신호로 존재함.
네트워크 프로그램 간의 연결까지만 담당.
-ServerSocket: 동시 접속자들을 위한 각각의 Socket을 만들어준다.
- Stream: 데이터를 주고 받을 수 있는 통로
하드디스크에서 Ram으로 데이터를 가져올 수 있게 만든다.
Ram으로 들어오는 방향은 input(값 받기)
Ram에서 나가는 방향은 output(값 내보내기)