Read carefully page 119 of the NS manual( Adding a New Packet Header Type).I 
think that this can help you.

--- On Tue, 12/2/08, sai krishna gumudavally <[EMAIL PROTECTED]> wrote:
From: sai krishna gumudavally <[EMAIL PROTECTED]>
Subject: [ns] Changing the IP header
To: ns-users@ISI.EDU
Date: Tuesday, December 2, 2008, 10:22 PM

         I'm working on a project where i need to add a new field to the
existing IP header and bind it so that i can pass some value from tcl
script.Can any one give me a detailed procedure on how to do it as I'm
relatively new to NS2.
I am currently using ns-2.33 .
I tried to do the same with TCP and it worked.But that doesnt happen with IP
It says cannot over load the default constructor (because i put the bind
statement in the constructor).
Please reply to this problem as soon as possible.

#ifndef lint
static const char rcsid[] =
    "@(#) $Header: /cvsroot/nsnam/ns-2/common/ip.cc,v 1.8 1998/08/12
23:41:05 gnguyen Exp $";

#include "packet.h"
#include "ip.h"

int hdr_ip::offset_;

static class IPHeaderClass : public PacketHeaderClass {
        IPHeaderClass() : PacketHeaderClass("PacketHeader/IP",
                        sizeof(hdr_ip)) {
       * bind("gsq_", &gsq_);*

//IPHeaderClass() : PacketHeaderClass(const char*, int) {
*//bind("gsq", &gsq_);*

    void export_offsets() {
        field_offset("src_", OFFSET(hdr_ip, src_));
        field_offset("dst_", OFFSET(hdr_ip, dst_));
        field_offset("ttl_", OFFSET(hdr_ip, ttl_));
      *  field_offset("gsq_", OFFSET(hdr_ip, gsq_));*
        field_offset("fid_", OFFSET(hdr_ip, fid_));
        field_offset("prio_", OFFSET(hdr_ip, prio_));

} class_iphdr;

Thanks & Regards


Reply via email to