Protocol komunikasi di internet sangat bergantung pada format text. Ketika anda melakukan browsing ke google.com, maka yang terjadi adalah pertukaran string text terus-menerus antara router-router sampai dengan server goole.
Sebagai contoh adalah protocol TCP yang memiliki format sebagai berikut :
Misalnya awal dari protokol ditandai dengan karakter "abcde", akhir dari
satu paket protokol ditandai dengan flag "edcba". Kemudian 2 byte
berikutnya menunjukkan source port, diikuti 2 byte destination address.
Lalu HLEN sebanyak 5 byte yang menunjukkan banyaknya data.
Setelah itu data sebanyak HLEN. Terdapat trailer 4 byte, sebelum
ditutup CRC 4 byte.
Buat program untuk memisah-misahkan satu paket protokol. Misalnya
data yang diterima dari internet sebagai berikut ;
Program anda harus bisa mengambil satu paket protokol yang ditandai
dengan flag awal dan akhir protokol. Kemudian memisah-misahkan
source port, destination port, data dan trailer.
1. Create new project ;
Next ;
2. Mendesign tampilan form yang kita ingin buat ;
3. Program / isi codingnya ;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace parsing
{
public partial class Form1 : Form
{
string example;
public Form1()
{
InitializeComponent();
}
private void Click_Click(object sender, EventArgs e)
{
Click.BackColor = Color.Red;
example = labelExample.Text;
int flag_awal = example.IndexOf("abcde");
int flag_akhir = example.LastIndexOf("edcba");
int sourceport = flag_awal + 5;
int destinationport = sourceport + 2;
int hlen = destinationport + 2;
int crc = flag_akhir - 4;
int trailer = crc - 4;
Protocol.Text = example.Substring(flag_awal, flag_akhir + 5 - flag_awal);
SourcePort.Text = example.Substring(sourceport, 2);
DestinationPort.Text = example.Substring(destinationport, 2);
HLEN.Text = example.Substring(hlen, 5);
Data.Text=example.Substring(hlen+5,trailer-hlen-5);
Trailer.Text = example.Substring(trailer, 4);
CRC.Text = example.Substring(crc, 4);
}
private void Clear_Click(object sender, EventArgs e)
{
Click.BackColor = Color.Silver;
Action<Control.ControlCollection> func = null;
func = (controls) =>
{
foreach (Control control in controls)
if (control is TextBox)
{
(control as TextBox).Clear();
}
else
{
func(control.Controls);
}
};
func(Controls);
}
private void pictureBox1_Click(object sender, EventArgs e)
{
Close();
}
}
}
Berikut ini tutorial youtubenya ;
Tidak ada komentar:
Posting Komentar