쌍용교육센터 - 16일

개발자가 되고 싶어요 ㅣ 2024. 3. 11. 18:13

2024.03.11

http 웹 기본 지식: https://tmddus3002.tistory.com/32

 

[HTTP 웹 기본 지식] - 인터넷 네트워크

김영한님의 모든 개발자를 위한 HTTP 웹 기본 지식 강의 정리&복습 인터넷 통신 클라이언트와 서버의 물리적 거리가 멀 때 통신하기 위해서는 '인터넷'을 거쳐야 한다. 그러나 인터넷은 단순하지

tmddus3002.tistory.com

네트워크 면접 질문: https://tmddus3002.tistory.com/43

 

네트워크 면접 질문 - 1

출처: https://github.com/ksundong/backend-interview-question

tmddus3002.tistory.com

 

네트워크

네트워크란 다른 장치로 데이터를 이동시킬 수 있는 컴퓨터들과 주변 장치들의 집합이다. 네트워크의 연결된 모든 장치들을 노드라고 한다.

다른 노드에게 하나 이상의 서비스를 해주는 노드호스트라 부른다.

하나의 컴퓨터에서 다른 컴퓨터로 데이터를 이동시킬 때 복잡한 계층을 통해 전송되는데, 이런 복잡한 레이어의 대표적인 모델OSI계층 모델이다.

OSI 계층 모델은 모두 7계층으로 이루어져 있다.

데이터 통신을 이해하는데 OSI 계층 모델은 상당한 역할을 하지만, 인터넷 기반의 표준 모델로 사용하는 TCP/IP 계층 모델을 주로 사용하고 있다.

자바에서 이야기하는 네트워크 프로그래밍은 TCP/IP모델을 사용하고 있다.

 

인터넷 주소(IP 주소)

모든 호스트인터넷 주소(Host 또는 IP 주소)라 불리는 유일한 32비트 숫자로 구성된 주소체계를 이용하여 서로를 구분할 수 있다. IP 주소는 32비트 숫자를 한번에 모두를 표현하는 것이 힘들기 대문에, 8 비트씩 끊어서 표현하고, 각 자리는 1바이트0~255까지의 범위를 갖게 된다. 32비트의 주소 체계IP버전4(IPv4) 주소라고 한다.

오늘날 IPv4는 포화 상태이고, 이를 극복하고자 나온 것이 IP버전6(IPv6)이다. IPv6128 비트의 주소 체계를 관리하고 있으며, 16비트8부분으로 나누어 16진수로 표현한다.

 

DNS

각 호스트는 도메인 이름을 컴퓨터가 사용하는 주소(IP 주소)로 바꾸어 주어야 한다. 이렇게 IP주소를 도메인 이름으로 바꾸어 주는 시스템을 DNS(Domain Name System)이라고 한다.

 

포트

포트는 크게 두 가지로 구분된다. 컴퓨터의 주변장치를 접속하기 위한 ‘물리적인 포트’프로그램에서 사용되는 접속 장소‘논리적인 포트’가 있다. 이 장에서 말하는 포트는 ‘논리적인 포트’를 말한다. 포트번호는 인터넷번호를 할당 허가 위원회(IANA)에 의해 예약된 포트번호를 가진다. 이런 포트번호를 ‘잘 알려진 포트들’라고 부른다. 예약된 포트번호의 대표적인 예로는 80(HTTP), 21(FTP), 22(SSH), 23(TELNET) 등이 있다. 포트번호0~65535까지 이며, 0~1023까지시스템에 의해 예약된 포트번호이기 때문에 될 수 있는 한 사용하지 않는 것이 바람직하다.

 

프로토콜

프로토콜클라이언트서버간의 통신 규약이다. 프로토콜은 통신 시스템이 데이터를 교환하기 위해 사용하는 통신 규칙이다. 통신규약이란 상호 간의 접속이나 전달 방식, 통신 방식, 주고받을 데이터의 형식, 오류검출 방식, 코드변환 방식, 전송속도 등에 대하여 정의하는 것을 말한다. 대표적인 인터넷 표준 프로토콜에는 TCPUDP가 있다.

 

TCP와 UDP

TCP/IP 계층 모델4계층의 구조를 가지고 있다. 애플리케이션, 전송, 네트워크, 데이터 링크 계층이 있다. 이 중 전송계층에서 사용하는 프로토콜에는 TCPUDP가 있다.

 

TCP

TCP(Transimission Control Protocol)신뢰할 수 있는 프로토콜로서, 데이터를 상대측까지 제대로 전달되었는지 확인 메시지를 주고 받음으로써 데이터의 송수신 상태를 점검한다.

연결형 서비스를 지원하는 프로토콜.

 

UDP

UDP(User Datagram Protocol)신뢰할 수 없는 프로토콜로서, 데이터를 보내기만 하고 확인 메시지를 주고 받지 않기 때문에 제대로 전달했는지 확인하지 않는다.

비연결형 서비스를 지원하는 프로토콜.

TCP - 전화 / UDP - 편지

 

InetAddress 클래스

InetAddress 클래스IP주소를 표현한 클래스이다.

자바에서는 모든 IP주소를 InetAddress 클래스를 사용한다.

 

URL 클래스

URL(Uniform Resource Locator)이란 인터넷에서 접근 가능한 자원의 주소를 표현할 수 있는 형식을 말한다.


URL 클래스를 이용하여 url파싱도 가능하다.

 

결과창:

 

URL Connection 클래스

어플리케이션과 URL간의 통신연결을 위한 작업을 하는 클래스 URL 내용을 읽어오거나, URL 주소에 GET/POST 메소드 형식으로 데이터를 전달할 때 사용 추상 클래스로써 자신의 객체를 생성할 수 없고 URL 객체의 openConnection()을 통해 사용한다.

 

데이터베이스(DataBase)란?

지속적으로 저장되는 연관된 정보의 모음. 특정 관심의 데이터를 수집하여 그 데이터의 성격에 맞도록 잘 설계하여 저장하고 관리함으로써 필요한 데이터를 효율적으로 사용할 수 있는 자원

 

DBMS(Database Management System)

  • 데이터를 효율적으로 관리할 수 있는 시스템
  • 데이터를 효율적으로 관리하기 위해서 데이터베이스에 추가, 삭제, 변경, 검색을 할 수 있는 기능 제공

 

RDBMS(Relation Database Management System)

관계형 모델의 구성

  • 데이터를 저장하는 객체 또는 관계의 모음
  • 관계에 적용되어 다른 관계 생성을 할 수 있도록 해주는 연산자 집합
  • 정확성과 일관성을 위한 데이터 무결성

관계형 데이터 베이스의 특징

  • SQL문을 실행하여 엑세스하고 수정
  • 물리적인 포인터가 없는 테이블을 가지고 있다.
  • 연산자 집합을 사용한다.

 

SQL

SQL(Standard Query Langua ge)이란?

  • SQL데이터베이스에서 데이터를 검색, 삽입, 갱신, 삭제할 수 있는 표준 언어
  • SQL은 1970년대 IBM에 의해서 처음 공개된 이후 ANSI/ISO 표준으로 편입됨

 

SQL문의 종류

DDL(Data Definition Language): 데이터와 그 구조를 정의

SQL문 내용
create 데이터베이스 객체를 생성
drop 데이터베이스 객체를 삭제
alter 기존에 존재하는 데이터베이스 객체를 다시 정의하는 역할

 

DML(Data Manipulation Language): 데이터의 검색과 수정 등의 처리

SQL문 내용
insert 데이터베이스 객체에 데이터를 입력
delete 데이터베이스 객체에 데이터를 삭제
update 기존에 존재하는 데이터베이스 객체안의 데이터 수정
select 데이터베이스 객체로부터 데이터를 검색
merge 조건에 따라 데이터를 테이블에 삽입 또는 갱신

 

DCL(Data Control Language): 데이터베이스 사용자의 권한을 제어

SQL문 내용
grant 데이터베이스 객체에 권한을 부여
revoke 이미 부여된 데이터베이스 객체의 권한을 취소

 

TCL (Transaction Control Language): 데이터베이스 트랜잭션 제어

SQL문 내용
commit 보류 중인 모든 변경 내용을 영구히 저장
rollback 저장점 표시자까지 롤백하는 데 사용
savepoint 보류 중인 데이터 변경 내용을 모두 버림

'IT 국비 교육' 카테고리의 다른 글

쌍용교육센터 - 18일  (0) 2024.03.13
쌍용교육센터 - 17일  (1) 2024.03.12
쌍용교육센터 - 15일  (1) 2024.03.08
쌍용교육센터 - 14일  (2) 2024.03.07
쌍용교육센터 - 13일  (1) 2024.03.06