Skip to content

Commit

Permalink
[networking] Start to improve networking protocols idea
Browse files Browse the repository at this point in the history
- Rename some protocols
- Add new protocol idea for OSI layer 1 as `Asb`
- some minor fixes and improvements
  • Loading branch information
OmidHekayati committed Jun 28, 2023
1 parent 66a1480 commit c3e7cdd
Show file tree
Hide file tree
Showing 5 changed files with 26 additions and 2 deletions.
4 changes: 2 additions & 2 deletions ChaparKhane.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# ChaparKhane - Router Server
ChaparKhane use to be gateway and route [GP protocol](./GP.md) packets inside a society network or to other societies! ChaparKhane can also be as coordinator in networks without need GP packets come to ChaparKhane to route!!
ChaparKhane use to be gateway and route [GP protocol](./Giti-Network.md) packets inside a society network or to other societies! ChaparKhane can also be as coordinator in networks without need GP packets or Chapar frames come to ChaparKhane to route or switch!!

## Society network - Similar to IXP (Internet Exchange Point)
- Each society can have many ChaparKhane(GP Router) with multi path data-link connection! that has two type connection
Expand All @@ -12,7 +12,7 @@ ChaparKhane use to be gateway and route [GP protocol](./GP.md) packets inside a
- Each GP packet encrypts in OS and App layer by paired EncryptionKey before sending. This way no GP Address can steal by others!

## Implemented Library
We implement it on some language like [C](), [Go](https://github.com/SabzCity/libgo/blob/master/ChaparKhane) and more in progress. Easily make an ChaparKhane router app with these libraries.
We implement it on some language like [C](), [Go](https://github.com/GeniusesGroup/libgo/blob/master/ChaparKhane) and more in progress. Easily make an ChaparKhane router app with these libraries.

## ChaparKhane word meaning
["Chapar Khaneh"](https://en.wikipedia.org/wiki/Chapar_Khaneh) (Persian: چاپارخانه‎, IPA: [tʃɒːˈpɒːɾ xɒːˈne], courier-house) is a Persian term for the postal service used during the Achaemenid era. The system was created by Cyrus the Great, the founder of the Persian Empire, and later developed by Darius the Great, as the royal method of communication throughout the empire. Each "Chapar Khaneh" was a station mainly located along the Royal Road, a 2500 km ancient highway, which stretched from the Sardis to Susa, connecting most of the major cities of the empire.
1 change: 1 addition & 0 deletions networking-osi_1-Asb.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
# Asb - Physical Protocol
File renamed without changes.
File renamed without changes.
23 changes: 23 additions & 0 deletions networking.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
# Networking
All requirements in networking response with `frame` idea. Each network packet contains many frames in desire order that read by devices in a network to do some desire logic in each device, e.g. switching, routing, multiplexing, ...

## Frames
As describe in [sRPC](./sRPC.md) too, Each packet can carry many frames until respect network MTU. All frames have fixed first field name `Type` with `signed 8bit` length (Negative frame type reserved and use to extend types to int16 (or int64) length) that is same as [MediaTypeID](./media-type.md) but not use 64bit unsigned integer and standard here as a byte to minimize packet unnecessary overhead.

```go
type Frames struct {
Type int16
}
```

## Frames Number
frames number will be register here in this table and must be respect by all:

| Num. | Frame name | Doc |
| :---: | :---: | :---:|
| 0 | Unset | -------- |
| 1 | Asb | [Protocol](./networking-osi_1-Asb.md) |
| 2 | | |
| 3 | | |
| 4 | | |
| 5 | | |

0 comments on commit c3e7cdd

Please sign in to comment.